Add a shitload of debug logging to core

@rclough This'll make it pretty damn verbose if you set the core logger to `DEBUG`. This was just a quick pass, if you find any other places where it'd be nice to have logging then by all means through a `logger.debug` in there and send me a PR.

Calling it a night, please have your guy run off of master tomorrow and see if you guys can track down your issue.