Split tests into unit/integration/functional

Although not a huge change for some, unit tests no longer
touch the disk and so should continue to run fast.
Fix comment cid finding

We were doing silly things before that didn't actually work, splitting
out the unit tests made it show up that it only worked due to fallback.

Now, it should work like I planned.
Rework XDeadly::PostMod to not require disk access

Just so I can test it.  Should keep it working better I expect.
Minor cleanups

like we can't look for a comments article unless it has a parent

and using the `my ($self) = @_;` idiom
Note a couple more things that need doing eventually
Don't use Mojo::Asset::File in PostMod

Because it is so simple we don't need it, and we're working line-by-line
anyway so no reason to slurp it in and split it up.