Contact: vpetricek@eharmony.com

Fix a bug in quadratic feature expansion (-q) when a namespace is missing for some examples. Predictions for such example and model may differ depending on the
previous examples. This is due to subsets not being cleared when an example is parsed in. Old value of subsets from previous example at that position in
delay_ring is reused.

This bug exists in the latest version on github (4.1+) as well as 3.0 (for which there exists a smaller testcase exhibiting the bug)

To replicate

input:
2048 examples with namespace 'l' to fill in the delay_ring and an example without namespace 'l' which will reuse a slot in delay_ring and also the 'subsets'.

--- file: input -----------------------------
0 |l C
1 |l C
[... cut 2045 same lines ...]
1 |l C
1 |g M:1
---------------------------------------------

Here is a script to train a model, make predictions the usual way and then predict for each example separately with a new instance of vw. If the predictions
differ we hit the bug.

 --- file: run.sh -----------------------------------------------------------------
 #!/bin/sh

 VW=vw41

         $VW --bit_precision 20 \
                              -d input \
                              --final_regressor model \
                              --learning_rate 0.1 \
                              -q lg \

 # 1. feed vowpal all data at once
 echo "unsafe testing"
 cat input | $VW -i model -t -p output.unsafe

 # 2. execute vowpal for each example separately
 echo "safe testing"
 > output.safe
 cat input |
 while read line
 do
         echo $line | $VW -t -i model -p output.line --quiet
         cat output.safe output.line > temp
         mv temp output.safe
         echo -n "."
 done
 rm output.line

 # compare the two prediction sets - if they differ we hit the bug
 diff -u output.safe output.unsafe
 ---------------------------------------------------------------------------
allreduce is a library now
converted to use autotools
added configure to repo, removed Makefiles
added last files for configure to work
global_data now uses version in config.h
Added spanning_tree bin in cluster dir
now creating a linkable library
allreduce is now a installable lib / header file
changed default CXXFLAGS to be blank, added FreeBSD support
configure from Brian
Reduction interface developing, OneAgainstAll now in
fixed partial_prediction reset bug
added audit, fixed stride bug
removed auto generated build output
add header files to dist so that make dist works
fix global.nonormalize bug from Lihong
fixed norm bug
fix Nan on 0 update bug
oaa now does multiclass PV and statistics