fix for #4 may be in here but needs to be tested still also working on getting a better socket model in place
still working on the new io model for this