Closes #4359 (closed), #4430 (closed), #4433 (closed), #4432 (closed), #4357 (closed), #2949 (closed), #4429 (closed)