Make tracker.stop() synchronous
Test multiple calls to start() are handled
Add tests for redundant calls to start()
Rename 'self' to 'tracker' in context of promise
Add tests for positions