enforcing that async functions be wrapped in a helper to distinguish them from sync