Automatically resolve to most derived bootstrapper

I'm sorry about the reflection in the tests. I know! I can remove them, I was planning to, but they serve as a bit of documentation and I wrote them to test this anyway. 

This tries to resolve a few of the multiple bootstrapper errors. When there are no branches in the inheritance tree it automatically resolves the most derived one. 

I talked about this with @khellang on jabbr.
I'm not sure I like the use of exceptions for flow control. :cry: Would you mind coming up with an alternative?