That's an easy question to answer. If the user has missing profile fields (off the top of my head, the fields checked are "firstname", "lastname", "email", but you can always check by looking for the function "user_not_fully_set_up()"), then the user is redirected on login. If those fields are filled in, then the user is not redirected.
As for your original question - why not simply add a checkbox to the user profile page for the user to tick when they've read and understood the instructions. That way you can keep sending them back there (by customising the user_not_fully_set_up() function) until they tick the box.