Initial steps for Ramaze 2.0.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Remove the dependency on RackFileWrapper.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Remove the dependency on RackFileWrapper.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Use Ramaze.middleware instead of .middleware!

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Fixed the directory dispatcher specification.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Fixed the file dispatcher specification.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Simplified loading of Rack::ETag.

Checking for the arity of Rack::ETag is no longer needed.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
fix middlewares
Fixed Ramaze's middleware handling.

Turns out that calls such as `self.app` (see the various commits I made in the
Innate repository) can be a bit of a pain. While Ramaze "mirrors" the various
Innate constants it would apparently create a clone of `Innate.app` instead of
a reference (maybe something else equally weird was going on though).

Fixing this was rather easy, after I found out what the heck was going on. I
removed `Ramaze.recompile_middleware` since it offers no benefits over
`Innate.recompile_middleware` as well as having changed a few references to
`Innate.app`. This along with the various changes I made to the Innate code
means that Ramaze now plays along nicely with Innate.

Since I'm currently on a plane somewhere high in the sky (insert Top Gun tune
here) there's a chance my way of thinking has gone wack. Because of that I'm
asking @manveru and @leucos to take a look at this commit for some much needed
feedback.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
New way of setting middleware.

Middleware are now set similar to how it's done in Innate HEAD.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Merge branch 'master' of github.com:Ramaze/ramaze
Cleaning up shop.

To make it easier for developers to hack on Ramaze I've started changing
several parts of Ramaze related to how it handles dependencies and how the
release process is executed.

To make things easier I've added a Gemfile to the project (as well as an
updated .gems file). This means people can install the development gems by
simply running `bundle install`.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Removed the Growl logger.

This logger was fairly useless for both development and production
environments. It was also a pain to test, even on OS X.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Removed a left over reference to Growl.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Removed a ton of snippets.

Most of these snippets were either unused by Ramaze itself or were originally
added to provide compatibility between Ruby 1.8/1.9. There also werent any
tests for quite a few of these snippets.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Removed Ramaze.setup, Plugin and AppGraph.

Ramaze.setup was removed due to the lack of tests and Bundler (and similar
tools) being a much better tool to solve this problem. Ramaze::Plugin and
Ramaze::AppGraph were also removed due to the lack of tests and not being used
internally.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Removed ramaze/spec.rb.

This file has been deprecated for a long time.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Removed more useless helpers/loggers.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Updated the Travis configuration.

Ruby versions based on 1.8 will no longer be tested.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Updated the version number.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>