Defer to sphinx's documentation instead of holding 100s of lines of comments.
Eventual plan is to host documentation on RTD.
Move tests out of the shipped code.
Primarily opinion based
I think it is nice to separate tests from code, especially when both are big/spread across (eg: pip shipping tests actually would increase PyPI costs). This isn't a big-impact situation, but I'd appreciate having consistency between this and (basically) all the other OSS packages I work on.
Basically, bringing this up to speed with most of my other OSS projects.
No code changes here, beyond adding some not-so-great-but-better-than-nothing documentation strings to make pydocstyle happy.