Merge pull request #7 from eric-wieser/dead-reckoner

Introduce some new programs and APIs to handle turtle navigation
Create simple tree farm script
Correct a mismatch between treefarm prompts and behavior
Add treefarm to list of default programs
Fix one last mix up between slots 1 and 2 in treefarm script
Add `floor` script for building and placing floors or platforms
Add `floor` script to default programs
Fix a bug in the `floor` script
Create "shaft", a program to aid branch mining
Create "room", a program for digging rooms of specified dimensions
Add "room" to default programs
Fix some bad variable references in `room` script
Better input handling for `room` script

Return immediately after printing usage instructions.
Improvements to `room` script

Better handle change in elevation when digging out rooms for rooms with
both odd and even numbered heights.
More improvements to `room` script

* Remove an incorect `if` condition
* Declare the missing `up()` function
* Minor case letter case changes to some comments
Bugfixes for `room` script

* Remove whitespace from empty lines
* Only ascend to the next level if there is an additional level to be
dug
* Properly calculate when to rise an additional level
WIP: Re-implement `room` script
WIP: Debug `room` script

* Possible fix for "encountered undiggable block" error.
WIP: Fix a bug in `room` script

Ensure the `detect()` method detects forward properly.
WIP: More corrections for `room` script

Get rid of a self referential function call in `dig()`.