Fix default cmake build type for windows

Apparently the default build type on windows is "Debug" (at least for
cmake-2.8.11), while the default on linux is the empty string.  Finally
found a sane method for overriding cmake defaults - set them before
project() is called :-D
First attempt at cpack packaging
Much improved windows package

* Install Qt and system libs as required to make a self-contained
  package

* Add license file to give installer somewhere to look
  (annoyingly, you can't turn off the license screen completely
  when using cpack)

* Deduce version number directly using "git describe"

* Install to correct location (avoid x86 directory for 64 bit build)
Fix minor MSVC warnings
Set up file associations in windows installer

By default, open *.las and *.laz with displaz.  Include a checkbox so the user
can disable this if they desire, and ensure that the old association is backed
up and restored when displaz is uninstalled.
Fix console output on windows

By default, stdout and stderr disappear completely for windows GUI programs.
This is rather unhelpful when using or debugging displaz from the console, so
re-attach to the parent console if it's present after startup.  This lets us
get console messages, while also avoiding an annoying extra window when started
normally via the GUI.
Autodetect version number when built from git tree
Ensure that #version is always first in shaders

Some shader compilers require #version to appear first (even before
any #defines) and will give an error otherwise.
Make socket IPC more robust for windows version

Waiting for disconnection before reading (to ensure the whole message is
available) seems not to work at all on windows.  Instead, send the message
length first up so we known when we've recieved all of it.  This takes several
implementation hints from the QtLocalPeer class in QtCreator.

Fixes #17
Log Euclidian distance between selected points

Closes issue #23
Include URLs to external libraries in help->about
Use native file open dialog

Using the qt version of a file open dialog is just too different from
the native dialog for comfort, especially on windows.
Add menu items to open and save shaders
Add --shader command line option

This allows the user to specify a custom shader at startup
Make uninstaller check for previous versions
Prevent hang with zero length socket commands

For some reason, isValid() returns true even when a socket has been
disconnected - insert tweaks to work around this and avoid an infinite
loop when a null command is sent to an existing displaz instance.
Make socket name unique among mutliple users

* Get a uid for the current user, and put that into the socket name.
  Hopefully this means users on the same system shouldn't clash.

* Rename --servername option to --server for brevity

* Ensure socket is cleaned up on unix systems after a displaz crash
Use installed shaders instead of embedded shaders

Having the default shaders squirrelled away in a resource file reduces
the user-hackability, which is a bad thing.

* Set up QFile search paths for shaders so that they can be found in a
  platform-independent way in the rest of the app

* Remove shader embedding compile option, since it doesn't make sense
  anymore.

* Kill off shader resource embedding, since we're not using it anymore.
Readme tweaks

* Add shader editing instructions
* Umming and ahhing about the best summary
Tweaks to make doc generation work on windows