code: function defineProperty(el, key, value, options) {
    Object.defineProperty(el, key, extend({
      value: value,
      enumerable: false,
      writable: false,
      configurable: true
    }, options));
    return el
  }
docs: Helper function to set an immutable property
  @param   { Object } el - object where the new property will be set
  @param   { String } key - object key where the new property will be stored
  @param   { * } value - value of the new property
  @param   { Object } options - set the propery overriding the default options
  @returns { Object } - the initial object