docs: function RemoteError(error) {
      /**
       * @member {string} message A message detailing the error.
       * @memberof module:rodosha/messages~RemoteError
       * @instance
       */
      var message = error.message || "Unknown error";
      var name = "RemoteError" + (error.name ? ("[" + error.name + "]") : "");
      Error.call(message);
  
      /* Inject properties */
      this.message = message;
      this.name = name;
      this.toString = function() {
        return name + ": " + message;
      }
  
      /**
       * @member {string} stack The stack trace associated with this instance,
       *                        combining both local and remote details.
       * @memberof module:rodosha/messages~RemoteError
       * @instance
       */
      var localStack = this.stack || new Error().stack;
      if (localStack) localStack = localStack.replace(/^(Remote)?Error\n/, '');
  
      if ((error.stack) || (localStack)) {
        var stack = this.toString();
        if (error.stack) stack += "\n- Remote stack:\n" + error.stack;
        if (localStack)  stack += "\n- Local stack:\n"  + localStack;
        this.stack = stack;
      }
  
    }