Implement improvements from @dustinfarris' review.

* extractPageNumber is now a private method on the serializer.
* null is returned from extractPageNumber when the page query param
  isn't in the url.
* Create unit tests specifically for extractPageNumber and remove
  the previous indirect tests.
* next / previous are now always included in the metadata.