Improve diagnostic for calling `narrow<>()` without exceptions; avoid `narrow<>()` in gsl-lite (#269)
Improve diagnostic for calling `narrow<>()` without exceptions; avoid `narrow<>()` in gsl-lite (#269)

* Define `narrow<>()` unconditionally, static_assert() if exceptions are unavailable

* Avoid `narrow<>()` in stream operators to keep them supported in no-exception mode

I'm not sure if setting the failbit would perhaps be more appropriate, but this scenario is unlikely to ever happen (it cannot happen on every implementation I have access to), so we'll just stick with `narrow_failfast<>()`.
martinmoene/gsl-lite,martinmoene/gsl-lite,martinmoene/gsl-lite