Add linter.

Squashed commit of the following:

commit e82b5760a5df16afa3ef74c3d8f1231db549c66d
Author: Edd Barrett <vext01@gmail.com>
Date:   Sat Nov 23 14:54:15 2013 +0000

    Update usage.

commit 8096caf14119be7665b560c3794b9efbaae2397f
Author: Edd Barrett <vext01@gmail.com>
Date:   Sat Nov 23 14:38:59 2013 +0000

    Make linter quiet

commit 74eaf79a692faf20861cac041601d7cfa558656b
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 19:04:13 2013 +0000

    Add the ability to skip missing ARCH packages.

commit 10b6af572453667dfa39a8dd008c1c2130dfc8e2
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 17:54:43 2013 +0000

    Parameterise linter by arch

commit 19fc2b32ad15192b94028997c3a7a8fce8e4ed2b
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 16:47:15 2013 +0000

    Add quiet mode.

commit 0f6839004eb614f58fc451f88f6ef32f0e03070c
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 15:56:41 2013 +0000

    Initial support for manpage detection.

commit b45295b4d7ea2f6db8bb6d5611ff397f047f37ea
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 15:38:51 2013 +0000

    Check files exist in tl tree.

commit d21fe88e443e6ef758111f9319fca812c407b735
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 14:54:09 2013 +0000

    A couple of basic checks.

commit 1e12ac68b0533386f3cb458f10c720606fd110f2
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 13:35:55 2013 +0000

    More boilerplate for linter

commit df161d673f98842c36940e99d6c4bb98920483c5
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 13:28:45 2013 +0000

    Add the ability to not write out the plist, but rather return it.

commit a881c00654e1e7948a44f16b94d71bc6fc3fbd74
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 13:19:58 2013 +0000

    Separate regex filtering from writing file.

commit fc7db074fb546af93532bcd7d90da6846d6593a3
Author: Edd Barrett <vext01@gmail.com>
Date:   Fri Nov 22 12:50:16 2013 +0000

    Skeleton for linter