Add oauth module
Refactor REST api