Replace Foundation Reveal JS with a body class change, fixes T216

Summary:
- disables reveal.js
- update reveal config (and DOM) to use more generic class names
- use ModalRegion to trigger show/hide of modal
- fix the "Go Back" button in the modal

Test Plan: Try the create post modal, user edit modal, etc.

Reviewers: rjmackay

Reviewed By: rjmackay

Subscribers: seth, dkobia

Maniphest Tasks: T216

Differential Revision: https://phabricator.ushahidi.com/D66
Uncomment and feature toggle sets ui

Summary:
Sets UI code its partially wired and but commented out in the UI.
Instead we can just hide it with a feature toggle

Test Plan: - Enable 'sets_ui' feature and sets appear in header and add-to-set links on posts

Reviewers: shadowhand

Reviewed By: shadowhand

Differential Revision: https://phabricator.ushahidi.com/D77
Fix grunt requirejs builds

Summary:
RequireJS build now works, but only builds the initial includes, not files that are loaded dynamically later.

- Builds Init.min.js
- Build require.min.js as part of the task
- Add .gitignore for built js files

Todo
- Minify other requires that are still being loaded

Test Plan:
- Run `grunt requirejs` and see that it build successfully
- Switch to production env, include Init.min.js and see that it works

Reviewers: shadowhand

Reviewed By: shadowhand

Maniphest Tasks: T213

Differential Revision: https://phabricator.ushahidi.com/D76
Fix Workspace Chevron in FF

Summary:
* changed pseudo element from :after to :before
	* any element that has float right has to come first in FF

Test Plan: test workspace in FF

Reviewers: rjmackay

Reviewed By: rjmackay

Subscribers: shadowhand

Maniphest Tasks: T151

Differential Revision: https://phabricator.ushahidi.com/D80
Fix Admin Button Layout - fixes T196

Summary: * fixes admin button layout across the app

Test Plan:
* resize browser window
* check admin button layout

Reviewers: rjmackay

Reviewed By: rjmackay

Subscribers: shadowhand, eyedol, dkobia

Differential Revision: https://phabricator.ushahidi.com/D65
Selected Button States

Summary:
* select and unselect states
	* icon changes
	* background color changes on selected state

* bulk select still needs to be wired up, but the foundation is there.

Test Plan: click select buttons on Users/Tags views

Reviewers: shadowhand, rjmackay, eyedol

Reviewed By: shadowhand, rjmackay, eyedol

Subscribers: digitalafrican, dkobia

Maniphest Tasks: T190

Differential Revision: https://phabricator.ushahidi.com/D64
Filter Adjustments - fixes T103

Summary:
* app wide filter adjustments
	* role-filter
	* message-filter

* removes block-grid

* wraps clickable `<li>` in `<a>` tags.

* removes message-filter `fa-icons`
	* they were making the responsive layouts tight
	* needed the extra space
	* not essential

* fixes indentation

Test Plan:
* hover and click user roles
	* message filter should work the same once wired up
* resize screen for responsive views

Reviewers: shadowhand, rjmackay

Reviewed By: shadowhand, rjmackay

Subscribers: dkobia, eyedol

Maniphest Tasks: T103

Differential Revision: https://phabricator.ushahidi.com/D73
Created tests for new entities using phpspec, fixes T219

Summary:
- add phpspec to composer deps
- add tests for entities

Test Plan:
```
composer update
./bin/phpspec run
```

Reviewers: dkobia, rjmackay

Reviewed By: rjmackay

Subscribers: lkamau, eyedol

Maniphest Tasks: T219

Differential Revision: https://phabricator.ushahidi.com/D74
CMQ Grunt-Plugin - Fixes T125

Summary:
* adds grunt-combine-media-queries plugin

	* this combines matching, nested media queries into one media query definition for smaller file size, prettier production code.

	* Initial tests prove file reduction to be small, but could be helpful as the code base expands.

Test Plan:
* compile sass
* check `media/css/style.css` for repeated/inline media queries
* run grunt-cmq
* check `media/css/style.css` for combined media queries under one declaration per screen size

Reviewers: shadowhand, rjmackay

Reviewed By: rjmackay

Subscribers: eyedol

Differential Revision: https://phabricator.ushahidi.com/D70
Fix package.json syntax error, refs T125
Fixing map baselayers

Summary:
- Add a bunch of ddt logging in HomeLayout and Controller
- Manually remove map layers before removing the map
- Trigger map.remove() when Location editors are removed
- Create baseMaps fresh for each LocationEditor - can't use a layer on multiple maps

I'm still tracing some issues with the LocationEditor when used on a multivalue field.
Its no getting dom:refresh events but even if I fix that it'll likely be a bit awkward so might abandon fixing that for now.

Test Plan:
Main map:
- Load the main page
- Click 'Views', click 'List' .. Map is hidden
- Click 'Views', click 'Full' .. map renders
- Before the change the map wouldn't have loaded the baselayer, now it does

Modals:
- Click 'Create', pick a form
- LocationEditor loads
- Close the create form
- Click 'create' again, pick a form
- LocationEditor should still load

Reviewers: shadowhand

Reviewed By: shadowhand

Maniphest Tasks: T224

Differential Revision: https://phabricator.ushahidi.com/D83
Update built css
Fixes Admin Button Layout on Medium/Large Screens

Summary: * adds styling for medium & larger screens via @rjmackay's feedback.

Test Plan: No testing needed. I meant to fix this before arc land of D65

Reviewers: rjmackay

Reviewed By: rjmackay

Subscribers: seth

Differential Revision: https://phabricator.ushahidi.com/D81
Update import2x task, should fix T230
Avoid settings page navigating to a separate page. This fixes T199

Summary: Fixes issue with settings page navigating to another page after save. This is a temporal solution till we have a dashboard to take the user to.

Test Plan: Log in, click on workspace, navigate to Tools then select 'select site settings'. Edit either 'site name' or 'site owner' and click save. you should remain on the same page.

Reviewers: shadowhand

Reviewed By: shadowhand

Subscribers: digitalafrican, rjmackay

Maniphest Tasks: T199

Differential Revision: https://phabricator.ushahidi.com/D86
Move views and templates into subfolders

Summary:
Start of a reorganisation of JS views and templates. Trying to split up to 20+ views into subfolders.
Still a work in progress.

Test Plan: - Check UI still works with no JS errors

Reviewers: shadowhand

Reviewed By: shadowhand

Maniphest Tasks: T232

Differential Revision: https://phabricator.ushahidi.com/D78
Add Contact entity and spec test, fixes T226

Test Plan: `bin/phpspec run`

Reviewers: dkobia, rjmackay

Reviewed By: rjmackay

Subscribers: eyedol, lkamau

Maniphest Tasks: T226

Differential Revision: https://phabricator.ushahidi.com/D82
Switch to Aura.Di and fix config repo, fixes T198

Summary:
- replace Pimple with Aura.Di
- add more comments and clean up init file
- relocate the config repo properly, in the app

Refs D84.

Test Plan:
  ./bin/behat --config application/tests/behat.yml application/tests/features/api.config.feature --format progress

Reviewers: rjmackay, dkobia

Reviewed By: dkobia

Subscribers: lkamau, eyedol

Maniphest Tasks: T198

Differential Revision: https://phabricator.ushahidi.com/D88
Add very basic data provider list scaffolding
Wire Date Sources View

* wires the Data Sources View