Split into multiple files and renamed project to IMP, Also added both CPU and GPU queues