Added support for BigWig and backported to C++98

You may be interested in the changes we made here to make this library read BigWig.

If you look at the UCSC kent source code, the "header" struct for Wig data blocks (previously called 'wig_data_record') occurs just once, followed by bytes in a specific pattern based on the type of wig data (fixed step, variable step or bed graph). We modified the parser to handle these different types of Wig files.

Also, due to the nature of the platforms we are trying to support (older GCC compilers on linux), we back-ported the c++11 code to c++98 (sadly, I wish we could be deploying c++11 code).

Feel free to take or leave any of this, but I thought the wig reading stuff would at least be useful to your project's efforts.

Thanks for the great project!