Took care of the following points from the TODO list.

* Change the count parameters to std::size_t in the
functions calculating series of Bernoulli numbers.

* Change the index parameters from unsigned to int.

* replace misspellings  such as bernouli with bernoulli.

* Use boost's integer types having specified widths
such as boost::uint32, instead of std::uint32, etc.
Thereby do not include <cstdint>, but rather
<boost/cstdint.hpp>.

* All special function template function declarations are
forwarded in math_fwd.hpp...