began port of graph. tons of unfinished code - wont even compile - but it's looking like it'll be super sweet