fixed 'change' behaviour related to previous value being falsy. fixes #2
bugs spotted, updated todo.md