more work on content negotiation, nearly complete
basic implementations of all conneg, changes to type abstractions
Merge branch 'feature/conneg' into develop