[moos] add AbstractMOOS