async code
refator
optimal performance
refactor ip sort
update error obj
Merge pull request #4 from leoner/async

async code