Circular Dead Zones working

Implemented code that checks for circular dead zones. Also changed the XInput/XInputDevice.cs to check for circular dead zones by default, using pbhogan's suggestion.

See issue: https://github.com/pbhogan/InControl/issues/63

Works like a charm on my pc, with my XBOX 360 controllers, using either XInput or not. Based test on vector output length [0,1] and the fact that no snapping is noticed at all. (In my game the cross hair now makes a perfect circle around the player)