Moved the device open/close calls since they don't really seem to do much. Commented out the runloop calls for the same reason.
Implemented element values.
Made parent and device references weak to avoid possible retain cycles.
May as well open the device when it's init'ed because the call doesn't seem to make a difference anyway.
Moved stuff out of input value callback and into the class itself.
Commented out hack for initial device value.
Reimplemented accessing raw values.
Updated element value property to remove test hack.
Refactor of private initializer.
Added weak specifier to element property.
Refactored element value updates to use HIDValue.
Added missing retain.
Removed comment.
Hack to forcibly update value.