I think its compileable now, if I can figure out makefile