Minor improvements

- add constexpr tests
- use defaulted constructors where possible
- add tests for noexcept constructors
- made some operators non-friend non-member functions
- replaced redundant constexpr inline with constexpr