code: public <T> T sendMessage(Address dest, byte[] data, int offset, int length, RequestOptions opts) throws Exception {
          return sendMessage(dest, new Buffer(data, offset, length), opts);
      }
docs: Sends a unicast message and - depending on the options - returns a result
  @param dest the target to which to send the unicast message. Must not be null.
  @param data the payload to send
  @param offset the offset at which the data starts
  @param length the number of bytes to send
  @param opts the options to be used
  @return T the result. Null if the call is asynchronous (non-blocking) or if the response is null
  @throws Exception If there was problem sending the request, processing it at the receiver, or processing
  it at the sender.
  @throws TimeoutException If the call didn't succeed within the timeout defined in options (if set)