changed ObjectQueue to emit events and have some additional methods and adding some template classes