CDAP-556 Communication over SSL between AuthServer and LDAP
Fix the race condition between program stop and program status check and start.
- They should be using the same way to check if a program is running

Also some code refactoring to make the code cleaner
Plus a concurrency bug fix in getting program status for MR in workflow
Use future to carry the workflow client result instead.
fix checkstyle issue.
Merge pull request #589 from caskdata/feature/cherry-pick-fix-unit-test

Cherry pick fixes develop to fix unit test
(CDAP-559) Remove usage of CombinedClassLoader in ProgramClassLoader

- Also code cleanup around FilterClassLoader and ApiResourceListHolder
- Remove unneeded classes from MR and Spark job to make job starts faster.
- disable chatty logging from beanutils during test
Addressing comments
Merge pull request #587 from caskdata/feature/authserver-ldap-ssl

CDAP-556 Communication over SSL between AuthServer and LDAP
Merge pull request #590 from caskdata/feature/fix-classloader-leak

(CDAP-559) Remove usage of CombinedClassLoader in ProgramClassLoader
Merge branch 'release/2.5.0' into develop

Conflicts:
	cdap-app-fabric/src/main/java/co/cask/cdap/internal/app/runtime/service/InMemoryRunnableRunner.java
	cdap-unit-test/src/test/resources/logback-test.xml