perl wants "use utf8" when UTF-8 is in the source

When there are literal UTF-8 characters in the source, "use utf8" will
tell Perl to set the utf8 flag on strings.
require at least Perl 5.6

The core modules and pragmas being used require at least Perl 5.6 in
order to work. Explicitly saying "use 5.006" will make the error more
clear.
do not buffer STDOUT

This ensures that the status line printed to STDERR at the very end of
the script will appear after all other script output.
also ignore vim swapfiles
runtests.pl: switch the order of arguments

Putting the spec file first lets us consume all the other arguments as
the program to run. This makes it easier to use complex commands to run
the tests.
only use colors when attached to a terminal

If STDOUT is not hooked up to a terminal, automatically disable the
colors by setting the appropriate environment variable.
Fix typo
Fixed some typos in spec.txt
Don't leave empty file if re2c is missing

Fixes Issue #35
Capitalize Markdown.
Better error
Merge pull request #34 from cebe/patch-1

Fixed some typos in spec.txt
Merge pull request #37 from asgh/patch-1

Don't leave empty file if re2c is missing
Merge pull request #32 from emwap/patch-1

Fix typo
Merge pull request #28 from preaction/reorder-args

runtests.pl: switch the order of arguments
Updated Makefile for #29.
Merge pull request #29 from preaction/ansi-disable

only use colors when attached to a terminal
Fixed link.
Revert "only use colors when attached to a terminal"
Merge pull request #56 from jgm/revert-29-ansi-disable

Revert "only use colors when attached to a terminal"