Removes some unnecessary code from example program.
Fixes some styling on main README.
Applies minor refactoring in the Device API.
Notable the return of boolean values from various
functions, indicating if a call was successful or not.

Adds Device.Grab and Device.Release methods.
These allow us to get an exclusive lock on a device,
so that only our own process will ever receive events
from the device.

This ability should be handled with care, especially
when trying to lock keyboard access. If this is
executed while we are running in something like X,
this call will prevent X from receiving any and all
keyboard events. All of them will only be sent to our
own process. If we do not properly handle these key
events, we may lock ourselves out of the system
and a hard reset is required to restore it.
Revises code comments in Device.
Adds examples/exclusive program. It demomonstrates how to
obtain and release an exclusive lock on a device.