Bug 1067435 - Homescreen grouping

Everything is in a group, dividers act as group separators.

Working:
- Rearranging groups
- Expanding/collapsing groups
- Creating new groups between groups
- Saving/restoring collapsed state
- Transitions

TODO:
- Tests
- Editable group names (done by crdlc in follow-up)
- General polish and optimisation (pending Gecko bugs)