also have the common bits of the preprocessor

This doesn't really belong in both pokecrystal and pokered. It should be
shared between the two without copy/paste.
better KeyError exception message in preprocessor
merge preprocessor from pokecrystal c0a01c99

That version was better anyway.
Merge pull request #1 from kanzure/preprocessor

Also have the common bits of the preprocessor.