Cleanup as solution is closer.
wip. Need to implement direction