Update: implement basic structure and part of test APIs.