Moved impl classes of topic to impl package

To allign topic with mapreduce/replicated map; the implementation classes of topic, that are not relevant to the end user, are moved to the impl package.

If in the future we need more topic related api stuff, we can just add it to the topic package and don't need to add them in the core package which already is too big.