changed Utilities to the metaclass pattern, changed build system to module pattern