Modifying authorization methods.

This introduces a whole new concept of authorization in the application.
Instead of blacklisting access to actions, all actions are inaccessible
by default. The access to actions is modified using no_authorizaion!,
authorize_user! and authorize_admin!, which are all fairly self
explanatory.

In addition, there is a method called authorize! which is used to
implement authorization logic that is not trivial. It takes the same
arguments as the previously mentioned methods + a block. Within that
block, you can assert access and do or not do call permission_denied.

Examples of controllers utilizing the new methods.

class DummyController < ApplicationController
  authorize! :only => :index do
    permission_denied("No one can ever access dummy#indxex!")
  end
end

class DummyController < ApplicationController
  authorize_admin! :except => :index
  authorize_user! :only => :index
end
Removing unused method left there by mistake.
Making all actions inaccessible by default.

The previous behavior was that each action by default required
administration privileges. However, this made some controllers difficult
to read, as authorization was implicitly defined elsewhere.

Instead of explicitly adding redundant rules for readability, we're
changing the behavior to make each action inaccessible by default,
requiring developers to define authorization rules for each action.
Merge branch 'action-whitelisting' of git://github.com/badeball/conference-app into badeball-action-whitelisting

Resolved Conflicts:
	app/controllers/payments_controller.rb
	app/controllers/sponsors_controller.rb
Adjusted authorization filters in existing controllers
to match new scheme.
Password reset: Had to override devise passwords_controller
in order to allow users to reset their passwords.
Merge remote-tracking branch 'origin'