Complete clean code for Tags action_get_index_collection, refs T358

Summary:
- create `parser.tag.search` service
- create `TagSearchData` input
- define `TagRepository::search` method
- implment `search` with Tag repository
- use new code to implement action_get_index_collection

Test Plan:
```
bin/behat -f progress -c application/tests/behat.yml application/tests/features/api.tags.feature
```

Reviewers: eyedol, dkobia, rjmackay

Reviewed By: rjmackay

Subscribers: srutto

Maniphest Tasks: T358

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