Refactor groups management. Fix #370

- Moved adding/removing groups to OCA\Contacts\VObject\VCard
- CATEGORIES property wasn't removed when empty
- When removing all groups from contact, it wasn't assigned to ungrouped.
- When adding contact(s) to group it wasn't removed from ungrouped until
  you changed to other group and back.