clean code and make some ngDoc