Fixes #14.
Fixes #13.
Fixes #12.
Fixes #11.
Fixes #9.