Version bump to 0.4.0
add in some thread safety