SourceCodeClassifier marks unused open declarations

![image](https://cloud.githubusercontent.com/assets/873919/3530402/235c77fe-07a4-11e4-92f4-95802ae5e057.png)

I will add tests but it basically works. 
I cannot see how it'd improve behavior of the code. Since we are in async block, everything is executed in the thread pool (except the very first let! or do!, which are may execute in the thread which is started the async workflow.