Fixed sorting for budget categories

Budget categories should be sorted first by master category order, then child category order.

On the budget screen, the categories were not being listed in the proper order. This was fixed by creating a method in the BudgetCategories entity called getOrderCategories(), which is called from the Budget form.

On the new transaction page, when the category dropdown would be populated, categories were being populated in the wrong order. This was fixed by creating a method on the BudgetCategories repository called findOrderedCategories().

This resolves issue #3.