build config system (closes #3)