Register the load hooks as soon as the gem is required

Obey the load order from the Gemfile to properly register the load hooks
for AR and AC.

It is too late to register the hooks from inside an initializer block
and require the extensions, since the initializer blocks are executed
later in the initialization process. For instance, acts-as-taggable-on
was requiring some models when being required, force loading AR. When
AR::Base was loaded, the initializer blocks weren't run yet, so there
was no protected attributes extension set up, and everything exploded.

By moving the load hooks registration to the moment the lib is required,
as soon as AR::Base is loaded and the load hooks are called, protected
attributes extensions will be properly executed, as long as the gem
comes first in the Gemfile.
Remove journey from gemfile

Journey has been merged to Rails.
https://github.com/rails/rails/commit/56fee39c392788314c44a575b3fd66e16a50c8b5
Mass assignment with inheritance column

Related to rails commit:
89b5b31cc4f8407f648a2447665ef23f9024e8a5

which adds STI support to init and building associations, allowing
you to do

* BaseClass.new(:type => "SubClass")
* parent.children.build(:type => "SubClass")
* parent.build_child(:type => "SubClass")

to initialize an STI subclass.

This commit ensures that a protected inheritance column is still
respected during init