[WIP]Org edit categories

Putting this up to get comments (especially from @tansaku ). 
could we not also move the "if category; category.name; end" into the choose_first_in_range method for further DRYing, and of course prefer "category.name if category" where possible to turn 3 lines into one