Date proto implementation

This fixes #669

Implemented the rest of the `Date` prototype.

- Methods to set time (`setSeconds`, `setHours `, etc)
- Methods to set date (`setFullYear`, `setMonth`, etc)
- Longer constructor (`new Date(year, month[, ...])`)
- More formats (`toLocaleString`, `toTimeString`, etc)