some changes
tests added and working