Add support for dismissing notifications
Adding ability to dismiss a notification if it expires or for other reason.
One thing I noticed is that the "Timeout" option doesn't actually appear to do anything (and couldn't find any documentation that indicated such a parameter exists), so I needed a way to actually dismiss a notification when it expired.
This is potentially a breaking change because it changes the return type of the CreateAsync methods. I re-used the Notification class that seemed to be unused as the return type (since it mostly had some useful data on it already) and added a Close method to pass to the javascript method with the same name.
Only part I wish was a bit cleaner is that the Notification has to be disposable, due to IJSObjectReference itself being disposable. Possibly there should be two ways to call it, one if you want the notification back and one if you don't.