Add preventDefault to viewer events

This adds `event.preventDefault` and `event.isDefaultPrevented`
methods to the viewer.js event objects if default is preventable.

NOTE: this does not actually cause any default behavior of events to
actually be prevented. This provides a framework for event handlers to
request that the default behavior be prevented, and for code that
fires events to know about it.
Add external `linkclick` event that can be overridden by the user

This allows the user to call `event.preventDefault()` and prevent
the default behavior in order to handle link clicks in a custom way.
Merge pull request #28 from box/linkclick-preventdefault

Add preventDefault and allow preventing of linkclick event