refactoring - build independent htslib
minor cleanup - prototype warnings
refactoring to change layout
three setup.py strategies for htslib