Add some OOP sauce
Better implementation, hopefully. Also returns false instead of throwing exception
Updated test suite
Reflect fact findAuthor now return false on failure
Update some variables, add check for array before using array_search()