Test all officially supported linux distros

Includes more thorough rails-level tests and docs for the
aforementioned.
Fix how we source personal additions to laptop

If the file ~/.laptop.local doesn't exist, the laptop script returns a
failing exit code. This doesn't really make sense, and gets in the way of our
test runner.  Wrap this in slightly more verbose `if` to ensure a
successful exit code.