Make some class singleton to reduce object creation rate
Support for Asynchronous operations