Oop build system