compiles no errors some warnings need to edit make