Re-implement "create tag" use case, fixes T238

Summary:
- restore rUSH16c6d105999a1a4fd8a6940b41fc9480e58c85a0 after multiple reverts
- use Data objects for input
- use base repo for Tag repo
- fix broken API tests

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

and just to verify that nothing got broken with shared tools:

```
bin/phpspec run spec/Ushahidi/Usecase/User/LoginSpec.php
```

Reviewers: dkobia, rjmackay

Reviewed By: rjmackay

Subscribers: eyedol

Maniphest Tasks: T238

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