addresses #50 - adds better testing