Clang tidy fixes
Fixes #52 (closed) and works towards #53 (closed).
This is a few runs of clang-tidy with individual fixes turned on. I have not squashed the commits so that each step can be seen.
Fixes run
- use override on overridden virtual functions
- use nullptr instead of 0, NULL
- use = default for trivial constructors and copy operators
I have mixed feelings in submitting this for merge right before we ask to push a release. This should not change the functionality of the code, just clean it up and make it more 'modern' C++ (at least on the surface).
I was planning on waiting until after 0.16.0, but we do have an external user with an issue, and this should cut down warnings in conda installs.