Revert "removed unused classes and dependency"

This reverts commit 714734af4533ab08b6945e02b8374cfbd72dc590.

these files are actually required...