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
especially since here it isn't really incrementing.