Don't start compile when input stream is empty.

Our builds consist of many invocations to the TypeScript compiler, for different 'sub-projects'.
We have a filter in the gulp streams that only pass through changed files, so for rebuilds, most streams are in fact empty.

Currently, when a gulp-typescript pipeline ends, the compiler is 'started', even when no files have been passed to the stream.

This commit makes gulp-typescript skip the compile-call when the stream was empty, saving about 1-2 seconds per pipeline on my machine.
Rename to `_hasSources` (read as: a project has sources)