Calculate bearing if doesn't come from provider

1) fixed typo: (location.distanceTo(location) > 3) is never true - should be (this.location.distanceTo(location) > 3)

2) calculate bearing if doesn't come from provider: see problem description in
  https://groups.google.com/forum/#!topic/osmand/dTmQV4ftRn8