Make sure the Mite file is always different from the original.

Previously, a filename without an extension wouldn't get a .mite
and the original could be blown over.  Bad.
Give a particular error if the mite file is missing.

Better information for the user.
Explain why we're doing this with a system call.
Add a compilation test.

Unfortunately, Test::Compile 0.24 compiles by calling "use".
"use Mite" on a random file is going to error because of the
missing .mite file.  So we work around it for now.

Submitted a patch to Test::Compile to fix this.
https://github.com/egiles/test-compile/pull/2