merge localController and serverController, rename BaseController as
Controller and use it directly.

There is no need to implement C++ polymorphous in this situation.