Ignore `through` keyword when validating collections

Many-to-Many Through associations are currently defined with the `through` keyword in

    "attributeName" : {
      collection : "..",
      through: ".."
    }

This used to work great in sails 10-rc5, but throws "Unkown rule: through" in 10-rc7, so I guess it should be added here to prevent that error.
Or did the internal syntax for defining Many-to-Many Through change?

Cheers!
M
Added "protected" to list of reserved words
Fixing self declaration
Merge remote-tracking branch 'upstream/master'

Conflicts:
	lib/waterline/core/validations.js
initial commit
add missing self
Detects if there is a `findOne` in the adapter. Use it if it exists. And if not, fallback to use `find()` to simulate a `findOne()` as it currently does.
Merge branch 'adapter-findOne'
Merge branch 'fix-missing-self'
fix model belongs to a null when it should be undefined
Merge branch 'fix-belongsTo-null'
fix model belongs to a null when it should be undefined
Merge branch 'fix-belongs-to-null'
Merge pull request #452 from arctouch-diegosantiviago/ds/missing-self-declaration

Fixing self declaration
// Since `typeof null` === `"object"`, we should also check for that case
Merge pull request #461 from clarkorz/fix-belongs-to-null

fix model belongs to a null when it should be undefined
Merge pull request #459 from clarkorz/adapter-findOne

add findOne to adapter
return generic error message when something breaks in the the update
Coerce primary key criteria if type is integer or string.
Merge pull request #444 from mphasize/patch-1

Ignore `through` keyword when validating collections