Code cleanup.
Merge pull request #3 from jweese/master

v2.0 (official)
Fixes to alignment intersection.
Adjusted chunk size in output jobs.
Switched backslash CCG labels to dominating-first.
Removed vocabulary extraction bottleneck.
Switched chunk size inflation in OutputJob back to a reasonable value.
Moved NT combining into the mapper, should yield better distribution across reducers and no vocabulary bloat.
Fixed distributed vocabulary bug.
Removed outdated paraphrase tools.
Features now stored via feature IDs and vocabulary. Somewhat cleaned up feature name/label system.
Properly formatted Scheduler code.
Added a head notion to the Vocabulary.
Added PivotingMapper.
Added AggregationMapper.
Changed settings for Amazon EMR job launcher.
Merge pull request #4 from jganitkevitch/compact

Performance Improvements
extraction: clearer default label policies

This patch introduces the configuration key "allow-default-nt"
to let the user specify when default labels should be allowed for
extracted rules.

The possible keys are "always", "phrases", or "never", with
"always" being the default. These options correspond to the
following policies:

ALWAYS: the default NT is always allowed to be used for the LHS
or gap in any rule. (Hiero policy.)

PHRASES: the default NT is only allowed for the LHS of non-
hierarchical rules. (This is the default SAMT policy.)

NEVER: never use the default NT for any rule.

The previous configuration setting to change this policy was the
poorly named "allow-nonlexical-x". This was a boolean key, where
true meant the default NT could be used anywhere, and "false"
meant it would be disallowed for the LHS of a non-hierarchical
rule. This behavior has been kept for backward compatibility.
The mapping is thus

"allow-nonlexical-x" true => "allow-default-nt" "always"
"allow-nonlexical-x" false => "allow-default-nt" "phrases"

Previously, there was no way to set "never".
Changed partitioning of output jobs to be by first source word.
Added intersection tool back in.