Removed OutputStage and ProcessStage interfaces (again)
Logging in java is too damn hard.
Refactoring regarding deserialization of stages from json

* Removed StageProperties, instead merged them back into
  AbstractProcessStage. This simplifies the deserializer and is also
  a smaller change from current release.
* Parameter annotation is not also a javax.validations.Constraint.
  We reuse the constraint API for validations. This gives us *so*
  much more flexibility, and is very standard.
* We still use jackson for deserialization of stage parameters. It
  just makes the whole thing so much easier.
Comment fixup
Fixup. Removed unused imports.