Consider to change all Methods of User Class to Async
Created by: huan
There is some memory usages issue (#1435 (closed)) which needs us to rethink some part of the design of Wechaty.
For example: if we have 10,000 contacts and we use bot.Contact.findAll()
to get them all, then Wechaty have to ready()
those 10,000 contacts before return, which will cause lots of issues, for example: Block the Event Loop (#1450 (closed)).
If we change all the methods to Async, then the ready()
will not be needed anymore, all data will be loaded when they are used.