added graph implementation, started writing some specs2 tests