prototyping is over now :)
builds, but far from working - zero cpp changes for easier history reading *except main -> old_main in main.cpp