New way to write async modules