moved some graph stuff into generic parts
ability to make graphs of generic shapes