Abstracted increments for move weights by making into member variables
for each move.

Also implemented framework for altering proposal heat for certain
alignment moves.
StructAlign now correctly handles the fixed-alignment option.
fastSwapWithUncle now not used when alignment is to be kept fixed.
Commented out references to automation of burnin length and sample rate.
Some fixes so that fixed-alignment mode actually works.
 Changed command line option for switching on debug mode -- now requires
-debug=true. This is not listed in the usage information, because
presumably nobody reading that would need to switch on debug mode...
    
    AlignmentMove efficiency improved by not recalculating quantities
that are already cached.
    
    Alignment proposals implemented that use variable mu and lambda,
equal to the current values multiplied by a constant which is a member
variable of the AlignmentMove object.

	Also enabled autoTuning for alignment moves in second half of
burnin, which seems to result in improvements in accepted change rates
(i.e.
acceptance rates for moves that change the alignment) with much smaller
window sizes. One of the moves is kept at a fixed expected window
length, to make sure that more global realignments are also possible.

	More variable alignment proposals are only switched on in second half
of burnin, because if they are introduced before the alignment has
properly converged then convergence will take a lot longer. They are
intended mainly for mixing after convergence.
    
    Restoration after five-way topology move now keeps cached
information for lower part of the tree.
Implemented facility for allowing ModelExtensions to contribute to the
emission probability used in generating alignment proposals, provided
that the ModelExtension is able to compute a column-wise contribution to
the full likelihood.
ModelExtensions can now use upper information for alignment proposals.
Now localSigma can be switched on from command line.
Fixed some issues with structural alignment proposals, and incorporated
some efficiency modifications (updating cached vectors only within
windows).

Currently the lower information is tested and correct, but the upper
structural information is not fully tested.
Bugfix for alignment moves that don't use structural information in
order to update the cached aligned vectors after an accepted move.
Fixed an obscure bug affecting where the window end was allowed to be,
along with a couple of other things relating to selecting subtree roots.
MCMC info now printed every 100,000 iterations.
Postprocessing information is now output on-the-fly, and is flushed
along with current MCMC info every Mcmc.LOG_INTERVAL samples (default
100). 

This enables the chain to be terminated early in command-line mode
whilst having recorded everything up to the previous multiple of
LOG_INTERVAL samples. 

In GUI mode, all the output files will be handled correctly. In
command-line mode, the tree file will not have the correct NEXUS
terminus added to the end, so the following will need to be added some
other way in order to create a valid NEXUS file:

END; [Trees]
BEGIN st_Assumptions;
	treestransform=TreeSelector;
	splitstransform=EqualAngle;
	SplitsPostProcess filter=dimension value=4;
	autolayoutnodelabels;
END; [st_Assumptions]
Decision whether to use ModelExtension information in alignment
proposals is now delegated to the ModelExtension itself, rather than
being specified only via a global variable.
Merging structalign updates into structalign_spike.