Change CLOCK_REALTIME to CLOCK_MONOTONIC in delayMicroseconds

CLOCK_MONOTONIC is an always incrementing realtime clock. It is unaffected
by changes to system's gettimeofday() clock.
Add and initialize prog_start_time for timekeeping

prog_start_time is of type timespec.
- Declared in virtual_main.h
- Defined in wiring.c
- Initialized in main()
Implement micros() and millis()

Implemented using clock_gettime(), which requires -lrt flag
in the linker.
Add header wiring.h and remove stdio.h in wiring.c