thread affinity now uses some topology information

The order of logical cores on x86 is hardware and software dependent.
The cpuid topology reports this and this information is now used.
The mdrun -pinht option is generalized for SMT to -pinstride.
The mdrun -pinoffset option is now in logical (iso phyiscal) cores.
Thread-MPI no longer sets affinity, it's now all done in one place.
The option -pin is now an enum, default auto: only on when using all
cores and when no external affinity has been set.
A big NOTE is printed with auto when no pinning is used.
Option -pin on can now override thread affinity set outside mdrun.
Fixes #1122
All thread affinity code has been moved from runner.c to
gmx_thread_affinity.c.
Updated the mdrun manual for pinning also active without OpenMP.

Change-Id: Ibf0fe5882688de80c223640502c68e6170d4d044
Add colon after macro to help uncrustify

Without the colon uncrustify adds braces incorrectly

Change-Id: Ib361762c1b252de2b4a274c2be44f1fecb31b7da
Code beautification with uncrustify

We are going to try to keep our eyeballs from bleeding when we
read prehistoric code from this project while maintaining it.
So we need a point in time where release-4-6 gets beautiful
in tandem with master. That time is now.

At some point we hope to be able to do this automatically so
we can have reviewers concentrate on code quality and not
formatting trivia. But we have to do a whole-of-project
fix first.

Refs #845

Change-Id: I8e99228cc118f75c0831e8297c171fcbbabc8f73