Added Author/AuthorBook repository functionality.

1. Fixed issue with books migration not setting publisher_id as
nullable.
2. Added guarded attribute to most models.
3. Added relationship between Author and Book to Author model.
4. Added functionality to AuthorBookRepository and AuthorRepository.
5. Fixed issue with BaseLaravelValidator and child classes not being set
up right. Using the default usingRule() method no longer causes it to
explode.