Allow instrumentation in RTTI-off env and improve error reporting

However, this pull request adds dependency to the Boost.TypeIndex library.

With this patch GCC error reports:
```
boost::math::test_function<N5boost4math8concepts12real_conceptE>(N5boost4math8concepts12real_conceptE, N5boost4math8concepts12real_conceptE, N5boost4math8concepts12real_conceptE) 
```

look like:
```
boost::math::test_function<boost::math::concepts::real_concept>(boost::math::concepts::real_concept, boost::math::concepts::real_concept, boost::math::concepts::real_concept)
```

with and without RTTI.

In other words: almost the same look on all platforms with any compilation flags.