Mostly comlete with #2 and #1, need to implement visualization logic next