check deflater content type
deflate type check against Rack::Mime::MIME_TYPES

- Rack::Mime::MIME_TYPES
  - now has 604 "file type" => "mime" maps
  - these 604 maps include 535 MIME types
  - all MIME types should deflate or not list in content_type_deflate_expectation
- fix typo
  content_type_deflate_expection -> content_type_deflate_expectation
Remove OptionHash with options hash and SessionHash#id

There is no point in OptionHash to redefine exactly one method of Hash
to return session id. Session id belongs to SessionHash and by moving it
there we remove unnecessary class. This leads to better perfomance and
cleaner code.
Use ENV_SESSION contants in #commit_session
Make options accessible through SessionHash

It removes need to write long
@env[Rack::Session::Abstract::Id::ENV_SESSION_OPTIONS_KEY] by
abstracting it to the proper level.
Remove SessionHash inheritance from Hash

Previous api provided by SessionHash was inconsistent. All methods
provided by Hash which were not rewritten in SessionHash were behaving
incorrectly when session was not loaded yet. For example, #replace, #each,
 #keep_if and many more. So by dropping Hash inheritance we provide
clean api with all methods working without regard to whether session was
loaded or not.
SessionHash should be enumerable
Fix messed up identation
Update status codes list

Fix formatting and update comment about generation of new status codes
Allow Rack::Static to assign HTTP Headers based on rules
Try to get headers working on Ruby 1.8.7
Allow HTTP header rules to be provided in array of arrays (useful on Ruby 1.8.7)
Only run header rules tests that use a hash on ruby 1.9 and above
Use Gemfile to better exploit bundler
Update README
Ignore .bundle directory
Merge pull request #425 from SamSaffron/master

Fixed Rack::Lock so it correctly releases mutexes on throw
Include Max-Age in Set-Cookie header
Rack::Static: Refactor array of arrays implementation
Rack::Static: Provide custom HTTP header rules as array only and more concise docs