Fixed #293 & Scanner:makeHumanoidLeave()

Bug #293 would make undressed patients leave a room without getting
dressed. It could occur in these screen rooms: the cardiogram room, the
general diagnosis room and the scanner room.

I've fixed this bug by creating and inserting call statements for:
Room:makeHumanoidDressIfNecessaryAndThenLeave(humanoid)

My fix for this bug required the affected rooms to override
shouldHavePatientReenter().

It also required this commit to fix Scanner:makeHumanoidLeave() by
making it make patients leave a room with a correct action queue by
making the scanner's after_use function become nil preventing its
dealtWithPatient() call from queuing wrong actions.

My #293 bug fix also requires queue actions to record when a patient is
queuing to use a door in order to leave a room.