allow collections to override the personalization subcategory by setting...

... the personalizationType property. this allows grids on different screens that utilize the same underlying resource to have different sets of personalizations

This changes the ```savePersonalization``` and ```fetchPersonalizations``` functionality of the Customizable mixin. The author of a Collection can now specify a ```personalizationType``` property which, if present, will be used in lieu of the ```dataType``` for the personalization subcategory.

As the individual projects implement their own versions of ```createPersonalizationRecordForClientSide```, the project will need to ensure that it uses the new ```personalizationSubCategory``` property for the record's subcategory.

---
__Pivotal Story__

[Personalization on the grids should be on scope level instead of resource level](https://www.pivotaltracker.com/story/show/55841928)

---

__General Requirements__
- [x] Pull Request contains full description of changes
- [x] Link to the Pivotal Tracker story
- [x] Rebased against latest master branch
- [x] There are no `-1` code reviews (can only be overridden by Kyle)

---

__Coding Standards__
- [x] Style guidelines are followed, code has been formatted
- [x] Code follows idiomatic language paradigms

---

__Testing__
- [x] Test coverage has not decreased
- [x] There is no performance degradation
- [x] All appropriate automated tests are present
- [x] Appropriate seed data exists


---

__Shared Project / Dependencies__
- [x] Reviewed by Architect