Merge pull request #26 from dlindahl/features/mega_migration

Move upgrade path into migrations
Removes the inflection of the acronym "API"

Host applications that have their own API controllers may not have
chosen to inflect "api" to "API"

In that scenario, simply including the CASino Engine into that application
will cause the entire app to "blow up".

In accordance with the "Principle of least astonishment", CASino should not
mandate how certain words are inflected unless they are entirely unique to
CASino.

* Removes the inflection rule for the API acronym

* Renames the few classes/modules that live within that namespace

* Aliases the "Api" namespace to "API" for applications that *have* chosen
  to inflect "api" to "API"
Removes overriding the visibility of ActionController::Base#cookies

Rails declares ActionController::Base#cookies to be a private method.
CASino should respect this and not change it to be public just so that
listeners can interact with them.

This adds a convenience method to CASino::Listener that exposes an API
into ActionController::Base#cookies by calling #send in order to access
the private method.
Adds CurrentUser processor

This extracts the "find user by TGT" logic that exists in all of the processors
and puts it in a CurrentUser processor.

This processor is automatically run in a :before_filter for most controller
actions. If a user is found, then the User record is assigned to the
@current_user instance variable. From there it can be passed into the other
processors as well as be used in the various CASino views.

An additional benefit of this feature is that the host application can also
use this value in its own views:

```ruby
class WidgetsController < ApplicationController
  include CASino::CurrentUserHelper

  def index
    # ...
  end
end

<div class="widgets">
  <% if user_signed_in? %>
    <%= debug current_user %>
  <% end %>
</div>
```

* Adds CurrentUser processor to encapsulate all user look-up based on TGT
  values

* Provides #current_user and #user_signed_in? controller helper methods

* Refactored some more complicated internal logic out into private methods
  for a handful of processors

fu