#Bash 74 bytes
sed -r "s/\s*([.,?\!\"\':;\(\)A-Z])(\1|\s)*/\1/g;s/(he|she|it) is/\1\'s/i"
Usage: Enter text, press enter and then Ctrl + D (send EOF).
This should be straight up sed
, but I can't get it to work properly... (Unknown command `.')