Hi Andrew,
I agree with you the implementation could be nicer and eventually I may get to that. But its a matter of there are many desirable things to work on, the current implementation was easy low hanging fruit to implement that allowed me to deliver it quickly and move on to other things I need to work on. I could have postponed it until I have more time to do a nicer solution but it seemed better to go ahead and implement the simple solution. Given that I have a large and ambitious to do list and this feature does currently provide a solution, it doesn't rank high on my priority list at the moment to put in the time it would take for a nicer solution for a solved problem compared to all the other unsolved things I need to work on.
Best,
Joe