Fixes #61, Fixes #60, Fixes #59, Fixes #58, Fixes #53.