code: public <T extends HalRepresentation> T as(final Class<T> type) throws IOException {
          return objectMapper.readValue(json, type);
      }
docs: Specify the type that is used to parse and map the json.
  
  @param type the java type used to parse the JSON
  @param <T> the type of the class, extending HalRepresentation
  @return instance of T, containing the data of the parsed HAL document.
  @throws IOException if a low-level I/O problem (unexpected end-of-input, network error) occurs.
  @throws JsonParseException if the json document can not be parsed by Jackson's ObjectMapper
  @throws JsonMappingException if the input JSON structure can not be mapped to the specified HalRepresentation type
  @since 0.1.0