code: function (expression, descending, opts) {
              descending = isBoolean(descending) ? descending : true;
              opts = opts || {};
              this.__expression = expression;
              this.__descending = descending;
              var nulls = isString(opts) ? opts : opts.nulls;
              this.__nulls = isString(nulls) ? nulls.toLowerCase() : null;
          }
docs: @lends patio.sql.OrderedExpression.prototype 
  Represents a column/expression to order the result set by.
  @constructs
  @augments patio.sql.Expression
  
  @param expression the expression to order
  @param {Boolean}[descending=true] set to false to order ASC
  @param {String|Object} [opts=null] additional options
  <ul>
  <li>String: if value is "first" the null values will be first, if "last" then null values
  will be last</li>
  <li>Object: will pull the nulls property off of the object use use the same rules as if it
  were a string</li>
  </ul>
  @property expression <b>READ ONLY</b> the expression to order.
  @property {Boolean} [descending=true] <b>READ ONLY</b> true if decending, false otherwise.
  @property {String} [nulls=null] if value is "first" the null values will be first, if "last" then null values
  will be last