cache_child_count added using counter_cache of belongs_to :children

Adds support for the number of direct children to be cached on any node without any further lookups.

```ruby
  acts_as_tree cache_child_count: true
```

Migration should contain

```ruby
  t.integer :child_count, null: false, default: 0
```