Settings: Admin User Tab

closes #2422

- updated to use new change password method
- have all save settings use notifications
- create assetUrl helper for creating asset paths with subdir's properly
 prefixed
- move all url based helpers onto a url object in ghost-paths
Refactoring fixtures

refs #2600, refs #2379

Refactoring fixtures to make permission management a little easier
- Separate fixtures into JSON file and split permissions fixtures from other fixtures
- make fixture migrations more robust by fetching objects, not relying on
  ids and checking before adding
- changed owner fixture slightly to remove any confusion between the 'Owner' role and 'Ghost Owner' user.
- moved 003 fixture versions out of config into logic, possibly not a good
  idea
- refactored permissions fixtures and added permissions_roles fixtures to
  make it easier to read / add
Merge pull request #3253 from hswolff/settings-user-tab

Settings: Admin User Tab
Merge pull request #3238 from ErisDS/issue-2600

Refactor fixtures & fixture migrations to 003
Fix validations on user settings page

Closes #3271
- Change validations on both server and client to allow the
  Website field to be empty or a valid URL.
- Add new schema validation helper isEmptyOrURL.
- Remove duplicate call to UserValidator in the save action
  of the SettingsUser controller.
- User.last_login and User.created_at are already Moment objects
  so Moment#fromNow can be called on them directly.
Merge pull request #3272 from jaswilli/issue-3271

Fix validations on user settings page
Server side cleanup

- remove sessions
- remove all references to csrf
- create a shared base model for the 2 types of token