I'd rather see the methods implemented in the cpp better than in the header. Two reasons for this:
1) Faster compilation time.
2) Say we want to modify one of these methods. If they are in the header then it would take quite
long to re-compile, even if we only do a tiny little change. To modify a header forces re-compilation of
everything.