Full implementation of os.date

- Fixed default os.date behavior not implemented.
- Fixed format other than "*t" not implemented.

This commit allows standard C date format parameters to be used with
os.date.

The implementation also includes the first ever (?!) C# implementation
of strftime that complies with the standard specification at
http://www.cplusplus.com/reference/ctime/strftime/