Wrapping up most loose ends. closes #5, closes #7, closes #12