Hopefully closes #742, #814 and #815. Please test.