Bug fix: the $hidden and $visible arrays should trump the $appends array. Currently anything that is appended to the model appears in the toArray or toJSON conversion and ignores the $hidden or $visible settings