Miscellaneous navigation fixes

This is a collection of patches I've been using for tweaking the EKF and navigation performance.  This is heavily tested and flies well in my experience.

This has a collection of changes like refactoring how the attitude module works so it can run multiple filters simultaneously and some changes to the EKF that make it behave more stably.

Big apologies that this is essentially a mess of changes.  It's the result of two months of flying and tweaking code rather than a principled set of changes.