renamed CompletionBlock to CWCompletionBlock to prevent typedef conflicts