Starting to refactor all the contain logic into a separate object, it is
big enough to be its own class and was strating to get hard to follow
Moving more code into EagerLoader
Improving class readability
Moving more code around so tests can start passing
More refactoring to make tests pass, also cleaning up EagerLoader to do
less useless looping
Fixing more failing tests
Paginator can now use string or simple arrays for "order

"order" => "Posts.id" wasn't use by the paginator
It was expecting [key => order, key => order]
Removed unused test and simplified validateSort
Fixed code formating
More tests passing
Fixed some typos
All tests passing now
Actually making all tests pass
Making the internal representaition of containments a simple array, the
idea of returning the ArrayObject so it could be modified from the
outside was a terrible one, was not tested nor documented.
Documenting and cleaning up
Documenting more functions
Renaming method
Moving some tests to EagerLoaderTest
Removing extra line
Fix more doc blocks