! httpx: move unmarshal and unmarshalUnsafe to Unmarshaller and add unmarshaller method

This fixes #373 by moving the `unmarshal` and `unmarshalUnsafe` methods from the spray.httpx package object to the Unmarshaller object. It also renames `unmarshal` to `unmarshaller` and adds an improved version of `unmarshal`that takes an `HttpEntity` as a parameter, making it consistent with `unmarshalUnsafe`

Added the necessary unit tests to `BasicUnmarshallers`.

Conflicts:
	spray-httpx/src/main/scala/spray/httpx/unmarshalling/Unmarshaller.scala
	spray-httpx/src/test/scala/spray/httpx/unmarshalling/BasicUnmarshallersSpec.scala