Abstracted DateInput and added Key handlers

Supported keys:
- ArrowUp: increase date type (year/month/day)
- ArrowDown: decrease date type (year/month/day)
- Enter: close date-picker

Fixes #26, #27
Confirmed, it does.