Delegate authentication to API implementation

Application should call HaveAPI::Server#authenticate { |request| block },
that has to return current user object or nil. The block is passed
one argument 'request' directly from Sinatra.
Add default authentication and auth to spec helpers

Every spec can now set its own authentication method. Default
authentication block can be set with HaveAPI.set_default_authentication.

Default auth is used when no other is specified.