code: function (obj, bounds) {
          // already a Cursor, do nothing
          if (obj instanceof Cursor) {
              bounds && obj.bounds(bounds.length, bounds.cycles);
  
              return obj;
          }
  
          // nothing to box, create a blank Cursor
          if (!_.isObject(obj)) { return new Cursor(bounds && bounds.length, bounds && bounds.cycles); }
  
          // load Cursor values from object
          return new Cursor((bounds || obj).length, (bounds || obj).cycles, obj.position, obj.iteration, obj.ref);
      }
docs: @param {Object|Cursor} obj
  @param {Object} [bounds]
  @param {Number} [bounds.length]
  @param {Number} [bounds.cycles]
  
  @returns {Cursor}