code: function tryCall(handler, data, callback)
  {
    try {
      handler(data, callback);
    } catch (e) {
      callback(e);
    }
  }
docs: Runs handler with provided data
  wrapped into try/catch
  
  @private
  @param {function} handler - handler function to run
  @param {object} data - data to pass to the handler
  @param {function} callback - invoked after handler finishes, or with caught error