refactor Hbond_backbone_indexer_base for a cleaner internal design
in hbond test use constants SIDE_CHAIN and BACKBONE in expected data
add EXPECTED_DONORS_BASE to match EXPECTED_ACCEPTORS_BASE in hbond tests
move towards  a unified donor and acceptor list for testing

EXPECTED_DONORS_BASE now has the same structure as
EXPECTED_ACCEPTORS_BASE
merge donor acceptor list used in tests to EXPECTED_DONOR_ACCEPTORS_BASE
Hbond_backbone_acceptor/donor_indexers are based on a common base

so donors and acceptors are stored and ordered in the same order as
Hbond_backbone_acceptor/donor_indexer but reported separately so that we
can define a Hbond_backbone_acceptor_and_donor_indexer which reports
them interleaved but in the same order. e.g. we get <donors-residue-1>
<acceptors-residue-1> <donors-residue-2> <acceptors-residue-2> ... and
so on
combine donor and acceptor test data into one list
renumber donor and acceptor to be 0 and 1
add a combined hbond donor and acceptor indexer 

new class is called Hbond_backbone_donor_and_acceptor_indexer
fix minor spacing issue
merge hbond  donor/acceptor energy lists from energy calculator into one