Implement fallback plan when gyro is missing

Summary:
-Implement a circular buffer SmoothingEngine
-Factor-out sensor-specific code
-(Extra: remove classes that were not needed)

Test Plan:
test it on
-MotoG, i.e. only compass & accelerometer
-Motoe, i.e. only accelerometer

Reviewers: samit.vaidya

Reviewed By: samit.vaidya

Differential Revision: https://office.tobyrich.com/D84
back button functionality changed to have the option to exit the app

Summary: when pressed back, dialog box pops up

Test Plan: can be tested by pressing back button in the app

Reviewers: radu.hambasan

Reviewed By: radu.hambasan

Differential Revision: https://office.tobyrich.com/D85
Switch Smartlink.jar with the new one

Summary:
The new LibSmartlink has a better queuing algorithm, so it can perform
on lower-end phones.

Test Plan: load it on all phones & fly

Reviewers: samit.vaidya

Reviewed By: samit.vaidya

Differential Revision: https://office.tobyrich.com/D87
Use LibSmartlink 2.0

Summary: see D87

Test Plan: same as always

Reviewers: samit.vaidya

Reviewed By: samit.vaidya

Differential Revision: https://office.tobyrich.com/D90
Display message when attempting to connect

Summary: Display "Connecting..." instead of searching, before we start connecting.

Test Plan: as usual

Reviewers: samit.vaidya

Reviewed By: samit.vaidya

Differential Revision: https://office.tobyrich.com/D93
Display toast only after connection.

Summary:
The "Pull up to start motor" toast should be displayed only after initiating
the connection.

Test Plan: tested it already

Reviewers: samit.vaidya

Reviewed By: samit.vaidya

Differential Revision: https://office.tobyrich.com/D94
Bump version to 2.0-BETA
Merge branch 'master' of pikacode.com:pvaibhav/app-smartplane-android