Consistent nlp main functions with ability to have accuracy-target tests

  

Now, all the nlp things have these three options:

val targetAccuracy = new CmdOption("target-accuracy", "", "FLOAT", "target accuracy for this NLP model. It will throw an exception if you don't hit this")
  val trainPortion = new CmdOption("train-portion", "", "INT", "portion of train to load")
  val testPortion = new CmdOption("test-portion", "", "INT", "portion of test to load")

Basically, specify an accuracy target, and it throws an exception if you don't hit it. This will be used for Jenkins tests. The train/test portions are also useful for development. 

Note: NER2 is unsupported, since it hasn't been put into the HyperParameter main paradigm yet.