Remove all usages of scala-compiler/scala-reflect classes, close #2288

This PR removes all uses of classes from either scala-compiler or scala-reflect.
As this has some impacts on the Maven plugin and archetype, please do not merge this PR right now.
license header