Include dependencies in makefile so it'll recompile on header changes
Put renderer in charge of freeing gl programs
Remove warnings, remove linking for shared lib