Implement tags PUT endpoint using new architecture, fixes T358

Summary:
- add parser.tag.update
- add UpdateTagRepository and rearrange dependencies
- add usecase.tag.update and spec
- implement updates with delta controls

Test Plan:
```
% bin/phpspec run spec/Ushahidi/Usecase/Tag/UpdateSpec.php
% bin/behat -f progress -c application/tests/behat.yml application/tests/features/api.tags.feature
```

Reviewers: dkobia, eyedol, rjmackay

Reviewed By: rjmackay

Subscribers: srutto

Maniphest Tasks: T358

Differential Revision: https://phabricator.ushahidi.com/D185