Adding delegate for web view callbacks

I know there's already another pull request for adding a webview delegate, though this one is a little nicer.

The callbacks are now all optional, and I've also changed the delegate names so they don't conflict with the real webview callbacks (and thereby don't override them like the other pull request).

Oh, and I've also created a nice accessor to set the delegate on the modal webview, which will set the delegate on the base webview.