many small changes which modernize, refactor, and comment the code base

Hi,

I'm not sure if you're interested in the direction I'm going here, but I thought I'd open a PR just in case.

The commits are fairly granular so their comment strings pretty much summarize the changes, but to recap they are mainly:
- switch to ARC and modern Obj-C idioms
- remove dead references in the project. set developer ID and provisioning profile ID to automatic, so anyone can build it out of the box
- comments
- add method for clearing canvas, and shake-to-clear in the demo app.
- minor refactorings to use framework utility methods