Makefile fixes

# Summary
- Usage of `.PHONY` tells make to compile regardless of the existence of files named `all`, `TODO`, `clean`, etc.
- Use dependency tracking to simplify the makefile — `pre-build` has been removed! One can just call `make all` or simply `make` now. Make sure to update your FreeBSD port accordingly.
- Makefile is < 80 chars width now.

# Tested on RedPorts
Mostly [successful results](https://redports.org/buildarchive/20140307123900-60203/). A few complain about a left-over file `usr/local/info/dir`, but porttools does not install this file, so maybe it's a RedPorts issue. Finally, instance `8.4-RELEASE/amd64` decided to spin its wheels while fetching from GitHub, but should work as it worked on i386.

*Edit: According to [#redports](ircs://chat.freenode.net/redports) the leftover file is probably a but elsewhere. Additionally FreeBSD 8.4-RELEASE jails can't fetch over HTTPS and the only reason the amd64 version succeeded was due to the distfile existing on that host from a previous build with a different FreeBSD version.*


Hope this helps the project, thanks!