Large amounts of refactoring; bind to page events

This will highlight commits from pjax loaded content, fixing #3