Fix build for external boost 1.56.0

exception/detail/attribute_noreturn.hpp has been removed in 1.56. We
shouldn't have used a detail header in the first place. Use Gromacs
own noreturn attribute.

Also:
- rename GMX_ATTRIBUTE_NORETURN to gmx_noreturn to match unused,
  restrict, and inline
- moved gmx_noreturn to basedefinitions.h
- defined gmx_noreturn for MSVC.
- always use attribute at the beginning not the end, to make it work
  with MSVC (also is more consistent)

Change-Id: Ieaeec03182be9a9d248bb460dae389270e806045