r735: fixed a bug caused by merge
r736: improved in low-complexity regions

Example: GGAGGGGAAGGGTGGGCTGGAGGGGACGGGTGGGCTGGAGGGGAAGGGTGTGCTGGAGGGAAAAGGTGGACTGGAGGGGAAGGGTGGGCTGGAGGGGAAGG

This read has 5 chains, two of which are:

weight=80  26;26;0,4591439948(10:-3095894)  23;23;27,4591439957(10:-3095888)  31;31;70,4591439964(10:-3095873)
weight=50  45;45;51,4591440017(10:-3095806) 50;50;51,4591440017(10:-3095801)  31;31;70,4591440090(10:-3095747)

Extension from the 26bp seed in the 1st chain gives an alignment [0,101) <=> [4591439948,4591440067), which
contains the 50bp seed in the second chain. However, if we extend the 50bp seed, it yields a better alignment
[0,101) <=> [4591439966,4591440067) with a different starting position. The 26bp seed is wrong. This commit
adds a heuristic to fix this issue.
r737: fixed an assertion when failed to convert sa

A bug pointed out by Mikkle Schubert
r738: output multi-map in the XA tag (SE only)

... PE support coming soon
r739: output suboptimal hits in the PE mode

However, PE information is not used for suboptimal hits
r740: don't attempt merge if bandwidth too large

Sometimes the bandwidth can be >10k.
r741: fixed segfault in rare cases
r742: further control the max bandwidth

I am looking at 6kb bandwidth...
Merge branch 'master' into mem

Conflicts:
	bwape.c