Better error-checking, commenting, and more choices