Fixed the issue.  Refs #7362.
Re #7362. Added validateInputs to the top.

Also re-arranged a bunch of other code. Part of the "clean-up"
that Wenduo had mentioned.
Re #7362. Finished making some parameters optional.
Checkpointing work.  Refs #7362.

1. Continue to cleaning codes by removing some legacy which is not used
now;
2. Removing properties NewInstrument by merging it to InstrumentName
Finished cleaning codes.  Refs #7362.
Merge branch 'feature/7362_enhance_editinstrument' into develop