     for k, v of resources
       @[k] = @_build_rest.apply @, [k].concat(v.concat host)
 
-  @fields = ( fields ) ->
-    @_build_gs key, type for key, type of fields
+  @fields = ( fields, opts = validate: true ) ->
+    @_build_gs key, type, opts for key, type of fields
 
 
 

  @param [String] field
  @param [String] type
  ###
  @_build_gs = ( field, type ) ->
    _val = null

    classname = ("#{@}".match /function\s(\w+)/)[1]


    getter = -> _val
    setter = (value) ->
      switch ltype
        when 'string' then is_valid = (typeof value is 'string')
        when 'number' then is_valid = (typeof value is 'number')
        else is_valid = (value instanceof type)

      if is_valid or opts.validate is false
        _val = value
        @update field, _val
      else
