Add: CounterCache feature to hasMany models

as discussed in issue #1879 
I guess, but I thought it would be wise to leave it open for other configuration options.