100% compiles, need to fix linking