Use strncpy to build the error message for exceptions.
Uphold noexcept property of TypeError::what().

Call ToString() to stringify object construction time, rather than in
the body of what().