Metering: Fix typing in map/flatMap/foreach pimps
util.text: Add min_format_float for formatting float with dropped zeros
Classify: Add --decay
Classify,util.text: Add table_column_format, format_table for lining columns up; use for better Classify results table output
FeatureVector: assert not accessing sparse array out of bounds
FeatureVector: Add feature_mapper, label_mapper in AggregateFeatureVector so can map back to string, use to display readable labels in pretty_pritnt
FeatureVector: Implement put_labeled_instances for aggregate feature vectors
Memoize: External indices always start at 0; memoize() -> to_index(), unmemoize() -> to_string()
Vector/FeatureVector: Make vectors/aggregates case classes
FeatureVector/Classify: Use correct names 'label' and 'choice' (vs. 'choice' and 'choice_yesno') and fix handling of Booleans and Arrays converting to/from external data
Reranker: Ensure same total number of choices when augmenting top-n
FeatureVector: Move put_labeled_instance(s) into object AggregateFeatureVector, add more assert checks, implement labeled_instances_to_file, rename put_labeled_instances -> labeled_instances_to_R
Classify/Cleanup: Add error(), other cleanups prior to adding MLogit
MLogit: Implement; works but hangs stuffing large data into R (FIXME!)
collection: Make some of the intersectWith/etc. fns return the right type (not finished)
Geolocate: Clean up file tag creation
Rerank: Set rank score as first default feature type
Rerank: Don't include an intercept term; not useful because not label-specific, would cause singularity error
MLogit: Finish implementation (but has memory errors with large models)
Reranker/Collection: Function to check whether a list is sorted and assert that ranker output has reverse-sorted scores