use willdurand/negotiation

see also https://github.com/FriendsOfSymfony/FOSRest/pull/16 for an alternative approach.
if we go with this approach use https://github.com/FriendsOfSymfony/FOSRest/pull/17 or move the left over Codes and Decoder classes here?