added penalize_terminal_gaps parameter to control how terminal gaps are scored in global alignment

~~NOT READY FOR MERGE~~

@ebolyen, this fixes the issue we were working on yesterday. see my [updated example notebook here](http://nbviewer.ipython.org/github/gregcaporaso/sketchbook/blob/master/2014.07.12-alignment-experiments/alignment-filtering.ipynb).  

Still need to add tests to this - will you review after that as you're most familiar with the issue?
Are there any tests that align a short seq1 to a longer seq2? This would confirm that penalizing terminal gaps still behaves as expected. Furthermore I don't see any tests for the default behaviour which have a short seq1 and long seq2, though I may have just missed it somewhere.