Remove some utility -> legacyheaders dependencies
- Use methods in programcontext.h and baseversion.h instead of
copyrite.h within utility/.
- Replace one use of asize() with an alternative implementation that
doesn't require an explicit array size.
- Don't pass the whole hw_opt structure to the OpenMP thread affinity
check, when only a single field is ever accessed.
- Don't call md_print_warn() from gmx_omp_check_thread_affinity(), but
provide the message to the caller so that they can print it.
For the last two, the rationale is that if this function needs to be in
a generic OpenMP wrapper (which makes sense, since it requires in-depth
information about the actual OpenMP library), then it shouldn't depend
on any mdrun-specific code.
Change-Id: Icc8f4026e4a2ce8e5d533a5bb88e5f3dddcc9a4a