Added Language support(unfinished). Added smartpointer implementation base class.