fix canvas pixel writing
add bounds checks prior to writing, might be sub-optimal for
performance, but there are relatively few writes currently
include exercises of "projectiles" tracking via vector math
rudimentary vector operations and PPM output
not sure about the "test code", I've switched from the PCL style
harness to a shorter (2 macros!) version using `assert` very similar
to 1am. The output is bad but I don't have a better idea yet.