Output format plugin

This is early work. I just wanted you to have a peek to the direction this is turning into.
`$this->contentType` only exists in `RestfulFormatterHalJson`. This is just a dummy implementation, more complex stuff should be delegated to children classes.