edited line search and started with quadratic stuff
util: BinarySerializer serializes and deserializes a file format version tag with every cubbie. This allows keeping old deserialization code around and working even as we improve things.
Merge branch 'master' of https://github.com/factorie/factorie
Span.end: Fix definition to match comment.  Now is index after last
token of span; (was index of last token of span).  Fixed internal usages
for new definition.  WARNING:  If you use Span.end (including
TokenSpan.end) directly, you should fix your code.
Span.value: Now immutable; (was mutable, tracking future changes to
the Span).
Merge branch 'master' of git@github.com:factorie/factorie.git
rename BPFactorTreeSumProduct -> BPFactorSumProduct for consistency
get rid of code duplication, subtle bugs and inconsistencies with null set of varying neighbors and left vs right varying neighbors
get rid of factorNeighborIndex which was not only unused but also being set incorrectly
get rid of bad type bound
fix very tricky bug where single-variable chain BP gives wrong factor marginals and can break learning
max product variable marginals fixed to be one-hots, small tweaks
BP: not using BP summaries for chain max
Merge pull request #1 from alextp/revisit-bp

Revisit bp
BP: not creating a BPSummary for the single-variable MAP chain case
BP: removing unused method
BP: making tree max product backpropagate things correctly and not use BPSummaries
BP: loopy max now also uses a MAPSummary
BP: removing separate types for BPVariableMaxProduct and BPVariableSumProduct; the MaxProduct version is no longer needed as it never gets seen outside BP.scala
BP: removing intellij warnings
BP: removing the difference between BPFactorSumProduct and BPFactorMaxProduct