Custom fields for Topic, Category, Post and Group

Please see https://meta.discourse.org/t/deprecating-hstore-meta-data-fields/14962/10?u=lightyear

---

In Detail:

 - Moves CustomFields from User into its own Concern with its own Tests
 - Adds CustomFields to Category, Post and Group
 - Adds CustomFields support for Topic, dropping the meta_data hstore while having a backwards compatible API and migrating the existing data
 - Adds Array support to CustomFields

Split into multiple Commits to split changes into atomic chunks.