Throw null argument exceptions in markread methods, don't call them if there's no user. Fixes #1.