Features:
1. Enhanced Task Creation Forms:
- New TaskForm component with all metadata fields
- Title, tags (comma-separated), time estimate (hours + minutes), flag color
- Used in TreeView (root tasks and subtasks) and KanbanView (all columns)
- Replace simple title-only inputs with full metadata forms
2. Time Format Changes:
- Display: "1h 30m" instead of "1.5h"
- Input: Separate hours and minutes fields
- Storage: Still integer minutes in backend
- Updated formatTime() utility
- Updated TaskMenu time editor with hours/minutes inputs
3. Leaf-Based Time Calculation:
- Leaf tasks (no subtasks): Show user-entered estimate
- Parent tasks (has subtasks): Show sum of all descendant LEAF tasks
- Exception: Parent with no leaf estimates shows own estimate as fallback
- New functions: calculateLeafTime(), calculateLeafTimeFlat()
- Replaces old aggregation that summed all tasks including parents
This allows accurate project planning where parent estimates are calculated from leaf tasks,
preventing double-counting when both parent and children have estimates.