Add a service object for indexing profile json documents

Fixes #654
This allows implementers to override to_json without impacting the
structure of how the profile is stored in solr.