Removed window dependency from initializing shim. Problem also exists
elsewhere but this is worth committing
Split cross thread queue into it's own class