Add support for user-injected classes to project searching.

This together with #12 allows me to use the ggp-base code as a library (as opposed to doing all my work inside it). Using this I can just make an e.g. MyServer class which calls ProjectSearcher.injectClass(MyPlayer.class) and then calls Server.main(). This is much more flexible. Personally I think the ggp-base codebase should move towards becoming more of a proper library that is published with jars as opposed to the current copy-and-paste whatnots.

On another note, any reason you're using tabs everywhere?