Add support for multi module project in runtime

Fixes #54 
So the issue I discovered is that if the first statement for a thread belongs to the parent project the measurements file gets created in the parent project. This file is used to write measurements for both the parent and child project. 

My solution to this was to make the `writer` and the `ids` into maps that take the `data dir` into account.