Fixed a bug in _backtrack function in tpt.py

The bestpath and bestflux variables are updated correctly according to whether the path being considered has the highest flux so far, but the bottleneck variable is always updated every time the function loops. This leads to potential inconsistencies between the path, which is the one of highest flux, and bottleneck, which will always be the bottleneck of the last sink node in the list B, not necessarily part of the highest flux path. I added a "bestbottleneck" variable that's updated analogously to bestpath and bestflux to fix this issue. I've tested this and the old script on identical data sets and this revised version seems to give more reasonable results.