Cleaned up constructor reflection code.

There was a lot of duplicate code and tests between BurstAndroid and BurstJUnit4 for reflecting on constructors, refactored all that into BurstableConstructor and BurstableConstructorTest.
Hm, this is a slight behavior change - previously `findConstructor` would have rejected a class with a nullary constructor and another constructor. I think that's okay though.