only parse regular, non-empty files

I have unix sockets sitting in my source dir:

$ ls -al /home/vagrant/pdns/pdns/pdns.controlsocket
srwxr-xr-x 1 root root 0 Jul 23 14:58 /home/vagrant/pdns/pdns/pdns.controlsocket
This makes codespell abort:

$ ./codespell.py -s ~/pdns
[...]
Traceback (most recent call last):
  File "./codespell.py", line 527, in <module>
    sys.exit(main(*sys.argv))
  File "./codespell.py", line 516, in main
    parse_file(os.path.join(root, file), colors, summary)
  File "./codespell.py", line 378, in parse_file
    if not istextfile(filename):
  File "./codespell.py", line 298, in istextfile
    with open(filename, mode='rb') as f:
IOError: [Errno 6] No such device or address: '/home/vagrant/pdns/pdns/pdns.controlsocket'
more misspells

Some more misspellings I found today while looking at drivers.
Install in /usr/local by default
Use make automatic variables
Split the build and install phases
Add a test suite
Don't emit errors about empty files since those are not useful.

Fixes: http://bugs.debian.org/733336
In the documentation, assume codespell has been installed

Fixes: http://bugs.debian.org/734412
Fix crash with dangling symlinks

Fixes: http://bugs.debian.org/734419
dict: eles->else instead of eles->eels

I have this feeling that it's probably slightly more likely that somebody
would misspell "else" than "eels" in source code. (I hope that this won't
piss off authors of Anguilliformes software.)
dict: Add parallell->parallel
"Modeled" is correct, not "modelled".
dict: eles->else instead of eles->eels

I have this feeling that it's probably slightly more likely that somebody
would misspell "else" than "eels" in source code. (I hope that this won't
piss off authors of Anguilliformes software.)
dict: Add parallell->parallel
Update the handling of colour output for more use-cases.

Disable colours when stdout is not a terminal by default.

Add an option to enable colours when stdout is not a terminal.

Fixes: https://bugs.debian.org/742207
Add repository and tarball location to README
Use the real path of codespell.py to get the default dictionary.
Merge pull request #24 from klausi/patch-1

Use the real path of codespell.py to get the default dictionary.
Merge pull request #20 from jrosdahl/master

One fix and one addition to the dictionary