Use postWithToken() method which automatically gets a new token if the current one is invalid

Should help alleviate (in fact, completely remove) badtoken errors as
discussed in #8.