Refactoring to make stuff a bit nicer

- Changed the 'approximate-zero' method to a 'rounding' method a la Andrew
- Moved the maths stuff into its own namespace
- Started writing tests for new namespace
- Refactored Bearing to reflect these changes