Fixes #4. Fixes #5. Fixes #6.