Implemented a simple reflection approach to the module repository. In the future it will need robust error handling. We might also add a repository that caches modules just in case.