added GPS check before mode change. New mode_requires_gps() function.