Initial work to convert Cuba to Sinuba, no tests yet
Allow manual subclassing, use constants for request/response

Previously, it was difficult to use a manually created subclass of Sinuba
(e.g. class Foo < Sinuba).  This is because you really needed to use
Sinuba define, which creates a subclass automatically.  This moves the
logic from define into route, so you can do:

  class Foo < Sinuba; end
  Foo.use ...
  Foo.plugin
  Foo.route{|r| ...}

Now, define just creates a subclass and class_evals the block.  In
order so that use still works, the @builder variable is set at class
initialization time.

This also changes how request/response classes are stored. Instead of
storing them in options, store them as constants in the class.  When
Sinuba is subclassed, set the request/response constants in the
subclass to be subclasses of the request/response constants in the
parent class.  This allows ResponseMethods/RequestMethods added by
plugins in the parent class to still propogate correctly to the
subclass, but it means that we don't have to subclass every time a
plugin is used that includes RequestMethods/ResponseMethods.
Ignore sinuba gem files in root
Convert tests from cuba to sinuba and from cutest to rspec
Use a _spec suffix and spec directory for specs
Add Sinuba.version constant
Add ability for coverage testing using SimpleCov
Add a Rakefile for common tasks
Add spec for render_opts inheritance
Add a spec for Request#post
Add spec for array matcher, and have matcher return string if matched
Add spec for on with no arguments, and use that style instead of on true
Minor updates to the README
Add not_found plugin not_found support similar to sinatra

This makes it so the not_found method is called if a response
returns 404 without writing to the response.
Add error_handler plugin, for error block called whenever exception is raised
Remove a couple of instance variables from Sinuba

Pass the block directly to the call method, to avoid the need
to store it in an instance variable.  Remove the @_response
instance variable and always access the response through the
request.
Allow req spec helper to take no arguments
Actually test that session persists in session spec
Add a flash plugin that implements a flash handler via sinatra-flash
Add spec guards that just warn if plugin dependencies are not installed