Move func decls to header file
Moving private definitions back into .cpp and normalizing public definitions.