AbstractAirspace: make "type" private
AbstractAirspace: pass rvalue tstring reference

Reduce runtime overhead.
AbstractAirspace: don't reset radio in SetProperties()

None of the two callers expect that, and this just adds useless
overhead.
AirspaceParser: move empty check to AddPolygon()
AirspaceParser: discard polygons with less than 3 points

Change AirspacePolygon runtime checks to assertions.
AirspaceParser: use vector::front(), ::back()
AbstractAirspace: inline GetRadioText()

Also don't copy the std::string, return a reference instead.
AbstractAirspace: make two methods non-virtual
Airspace{Polygon,Circle}: add missing "virtual" and "override" keywords
Airspace{Polygon,Circle}: remove redundant API documentation
InfoBoxes/Airspace.cpp: rewrote FindNearestHorizontalAirspace to use shared code

FindNearestHorizontalAirspace now uses already existing AirspacePredicates to
filter the airspace-database. VerticelAirspaceVisitor now uses ActiveAirspacePredicate
to check if airspace is active.
Infoboxes/Airspace: moved NearestAirspace to own File in src/Airspace

Changed struct NearestAirspace to a class and moved it together with the global
 function "FindNearestHorizontalAirspace()" to new file at src/Airspace.
Made the function "FindNearestHorizontalAirspace()" a static method of
NearestAirspace and renamed it to "FindHorizontal()". Edited InfoBox Airspace.cpp accordingly.
Airspace/NearestAirspace: split .hpp into .cpp and .hpp
Airspace/NearestAirspace: Moved code for nearest vertical airspace from InfoBox/Airspace into NearestAirspace
Airspace: fix whitespace problems
Airspace: use nullptr instead of NULL
Math/fixed: remove unused constant internal_quarter_pi
Math/fixed: make pi constants "constexpr"
Makefile: use clang 3.4 instead of 3.3 on Android if CLANG=y
Makefile: make clang the default compiler on Android

clang/LLVM support is now mature enough in the Android NDK.  clang
gives us better diagnostics.  One day, we'll enable link-time
optimisation via LLVM bitcode.