Make the Facets service RESTful (#629).

Get facet values (single + multi):

{{{
Topic getFacet(long topicId, String facetTypeUri)
GET /facet/{facet_type_uri}/topic/{id}

List<RelatedTopic> getFacets(long topicId, String facetTypeUri) # new method
GET /facet/multi/{facet_type_uri}/topic/{id}
}}}

Update facet values (single + multi):

{{{
void updateFacet(long topicId, String facetTypeUri, TopicModel facetValue, ClientState clientState) # new method
PUT /facet/{facet_type_uri}/topic/{id}
{topic model in message body}

void updateFacets(long topicId, String facetTypeUri, List<TopicModel> facetValues, ClientState clientState) # new method
PUT /facet/multi/{facet_type_uri}/topic/{id}
[array of topic models in message body]
}}}

** Multi-facet update via REST not yet functional **

Attach facet type:

{{{
void addFacetTypeToTopic(long topicId, String facetTypeUri)
POST /facet/{facet_type_uri}/topic/{id}
}}}

See #629