VT100: Add a "Notification" extension to allow for remote sending of notifications

The syntax is similar to the File extension: a semicolon-delimited string of
arguments. Currently, two arguments are supported: title, and description.

NB: At this stage, this is mainly an RFC/work in progress. This is the second time I've ever used objc in my life, so, mandatory:

![i have no idea what i'm doing](https://t1.gstatic.com/images?q=tbn:ANd9GcQ5nkQp1NO10U5rEong1pZ2wYlzBo-DQBvVNzxLICFaBdTxnRGU)

I've attempted to mark things that I think need fixing for real with TODO. I'm happy to work on them, but probably need some direction/help ;)
Unless there's a very good reason, we should always use NSUTF8StringEncoding (here and line 1727)