Clean up getopt_long call.

Remove now-unimplemented 'V' from getopt_long. Remove 'h', since it's
included in the long options. Order switch cases in the same order as in
the getopt_long argument.
Change rate measurement code.

For %o, remove a superfluous + 0.5: snprintf("%f") rounds already.
Remove some unnecessary code.

For %c, fix a TODO to add a sliding window and update after every
completed edge. Else, with -j50 and several files that take 3s to
compile each, this number would only update every 150s. Also give
the number one decimal place so that this can measure steps slower
than 1s.
Merge pull request #415 from nico/getopt

Clean up getopt_long call.
Merge pull request #416 from nico/slide

Change rate measurement code.
don't emit duplicate headers for msvc helper
Merge pull request #422 from sgraham/fix-dupe-includes

don't emit duplicate headers for msvc helper
remove some code duplication
build with msvc2012
Fix subtile buffer size error

The deduced type was char* with size 4 and not char[32] with size 32.
This removes strange output characters on Windows.
Merge pull request #419 from syntheticpp/rate-buffer-size

Buffer size passed to snprintf is wrong in rate code
fix spaces in headers for -t msvc
Give MinGW builds MSVC build helper superpowers

Note: _WIN32 is used instead of WIN32 to enable builds with MSVC
IDE, Windows SDK non-IDE command line tools, and mingw/mingw-w64
based toolchains
Silence bothersome warning from -Wextra

Struct initializations such as those in `CLWrapper::Run` of file
`src/msvc_helper-win32.cc` causes MinGW GCC to spew warnings.
review fixes
less random comment
Always include stdio.h
Merge pull request #426 from sgraham/spaces-in-headers-2

fix spaces in headers for -t msvc
Merge pull request #427 from jonforums/jf/mingw-n-msvc

fix mingw build fail - redux
packaging: refactored rpm building

Now passing through a valid SRPM, working in a standard way.
Merge pull request #428 from maximuska/proposed/rpm-build-fixed

packaging: refactored rpm building