Improve "Accept:" header detection

* package.lisp (#:resting): Export DEFRESOURCE and EXPAND-CONTENT-TYPE

* resting-tests.lisp (relations): Test doesn't make sense anymore.
(todos, "application/json", test-some-routes): Enhance tests with
Accept: header tests.

* resting.asd (:resting-tests): Require DRAKMA.

* resting.lisp (explain-condition): Don't pass
CLIENT-ACCEPT-DESIGNATORS.
(resource-p): Helper generic fucntion.
(find-content-class): Renamed from TYPE-DESIGNATOR-TO-TYPE-1
(no-matching-content-types): New condition.
(defroute): Not always DEFRESOURCE
(parse-accept-header): Much simplified. No longer that
SEND-ANYTHING crap.
(expand-content-type): New API generic function. Default
implementation sucks because slow.
(hunchentoot:acceptor-dispatch-request): Use classes instead of
type designators.
Autoset content-type in reply and other fixes

* resting-tests.lisp (:compile-toplevel): Define content-type when
compiling.
(test-some-routes): Tests work in sbcl
(test-some-routes): Check Content-Type header.

* resting.lisp (expand-content-type): Change order of arguments.
(:compile-toplevel): Need to add two
CLOSER-MOP:VALIDATE-SUPERCLASS thingies for metaclasses to
work. Geez.
(scan-to-strings*):  Move up here.
(hunchentoot:acceptor-dispatch-request): Autoset content-type in
reply.
Tweak :PUT support and tests

* package.lisp (#:resting): Export CONTENT-BODY

* resting-tests.lisp (todo): New route.
(with-request): Pull the macro outside.
(test-some-routes): Add PUT tests.

* resting.asd (:resting): Add some dependencies

* resting.lisp (:compile-toplevel): Replace CONTENT-STREAM with
CONTENT-BODY for now.
(hunchentoot:acceptor-dispatch-request): Set CONTENT-BODY