DotRocket: return double instead of float
DotRocket: silence a warning

While we're at it, rename a variable that was a victim of copypasta.
DotRocket: thread-safe callback-handling

Using gcroot instead should be thread-safe, by creating a native
wrapper-object that holds a reference, and using the data-channel
already present.
DotRocket: mark wrapper-functions as static
DotRocket: put DeviceReference in the anonymous namespace
DotRocket: remove pointless cast
DotRocket: remove pointless forward-decls
DotRocket: clean up brackets
DotRocket: remove superfluous semicolons
Merge branch 'dot-rocket-fixes'