Allow prototypes to be placed anywhere on the filesystem
Refactor some prototypefinder code into Prototype class