basic functionality working
working woohoo
multithreaded