Add: CounterCache feature to hasMany models

as discussed in issue #1879 
Hmm i suppose you could change it to `new CounterCache(this, this.options.counterCache !== true ? this.options.counterCache : {});` or similar i just prefer having as little code in the associations as possible.