basic functionality working

still need to finish drawing arrows properly