node: add inTick and lastThrew to infoBox

To prevent all unnecessary calls to JS from MakeCallback, the remaining
two immediate return variables inTick and lastThrew have been added to
infoBox. Now MakeCallback should never need to call into JS unless it
absolutely has to.

Also removed Tock. Performance tests showed it was at least as fast or
faster than using a normal object, and this is more readable.
cpplint: make lint rules closer to node's source

* Support C-style header guards (/* comments */)
* Support `class NODE_EXTERN something`
* Support `}  // extern "C"` closures
* Ignore header order
* Ignore `long/short` usage (because of OpenSSL's API)
src: lint c++ code
make: add `cpplint` to `test` target

Also, exclude some C-headers, machine generated headers and tweaked
sources from cpplint file list.
etw_provider: unbreak windows build