More proper debugging macros and cleanup as well as more abstraction to shapes.