Create a debug layer

* Add a debug canvas and a base "DebugCanvas" component
* Create several components that build additional functionality on top of the debug canvas
* Add tests and docs