[CDAP-1057] Added program type check, more unit tests
Merge branch 'feature/namespaced-program-list' into feature/namespaced-program-specification
[CDAP-1057] Improved type check so type can be reused
Merge branch 'feature/namespaced-program-list' into feature/namespaced-program-specification
[CDAP-1056] Improved program type checking so type can be reused