Fixing association foreign key issue and cached objects
Refactoring property definition handling to support array option, and anonymous property types
Typecast will no longer ignore invalid time, date, or boolean values
Merge remote-tracking branch 'upstream/master'

* upstream/master:
  Typecast will no longer ignore invalid time, date, or boolean values
  Refactoring property definition handling to support array option, and anonymous property types
  Fixing association foreign key issue and cached objects