Add: CounterCache feature to hasMany models

as discussed in issue #1879 
Sounds reasonable. It's changed now! :)