Fixes #310. Fixes #314. Fixes #316. Fixes #292.