Implemented a better build system