Add pagination support to CrossRef's API wrapper.
Remove the BackendService reference from IdController, and replace with a general Regex DOI validation taken from: http://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page which is based on the DOI spec.
Remove get_data_for_viz and the optimization of going to Solr to get metrics data, instead of going to the ALM API. As the Metrics tab of the Report is the first to load, this data will have been requested in any case and will be cached by the time we get to the Visualizations tab.
Remove the BackendService.
Add spec for file/bulk upload in IdController, using a fixture with fake PMID data, as the PLOS API is currently not returning the correct data.
Use ADD as 'method' used by AJAX, instead of SAVE, as the clearer opposite of REMOVE. Adjust specs accordingly.
Refactor Cart model to have SearchResult items, with add and remove methods to add or, remove items accordingly.
Remove last mentions of BackendService in Report and ReportDoi. Use a safer way to create ReportDois.
Add a fixture for a single item result from CrossRef, which is what happens when we populate SearchResults with CrossRef's help.
Don't try to require BackendService anymore, as it doesn't exist.
Change templates to use the new SearchResult model for both PLOS and CrossRef.
Remove subscription to SolrRequest.get_data_for_viz, as it doesn't exist anymore