Support --verbose option by changing log level to logging.DEBUG
Use a context manager to register builders
Polymorphism FTW