Pull print user check logic into PrintEnum.
Add BlockChangeDelegate for Tree tool, fixes #27

Tree tool now properly respects spawn area and region protection.