feat(bookmarks) Added bookmark APIs

- Added a new service (with basic unit tests) that wraps ngResoruce. Intended to replace all access to to ngResource.
- Add Bookmark service. Configured so it automatically downloads application bookmarks for user on load.
- Enhanced UserProfile service so that it utilises a promise chain that is able to be hooked into from other services (like Bookmark)
Started patching unit tests
Wrote extra unit tests
API updates mostly patched.

- Fixed Media tests
- Refactored Media model - it is now a proper ng module
- Patched various broken features because of API update
- Refactored rails resource - the case-changing functions are now exported in their constant so unit tests can use them
- NOTE: server side error means audio d/l failing. Not fully tested yet.
local changes
resolved merge conflict, enabled site hrefs
Finished fixing bugs.

Audio urls fixed up. Added explicit ordering since Angular's ng-repeat decided to start ordering things all of a sudden.
Also fixed up audio urls and spectrogram urls on annotation library page.
Fixed bu on annotationItem page that was causing binding errors... gave an empty configuration.
Final bug bix
Fixed click/a bug & hide a until ready
Merge pull request #149 from QutBioacoustics/recent-recordings

feat(listen) Added recent recordings page for bare listen link, Closes #130
Started patching unit tests
Resolved merge conflict
Finished fixing bugs.

Audio urls fixed up. Added explicit ordering since Angular's ng-repeat decided to start ordering things all of a sudden.
Also fixed up audio urls and spectrogram urls on annotation library page.
Fixed bu on annotationItem page that was causing binding errors... gave an empty configuration.
Resolved merge conflict
Merge branch 'media-api-fix'
Resolved merge conflict
Resolved merge conflict
Finished testing bookmarks
Resolved merge conflicts
Merge pull request #135 from QutBioacoustics/default-bookmark

feat(bookmarks) Added bookmark APIs, Closes #133