Don't bother caching compiled API notes at all. (#121)

Because API notes are always used with modules, and modules are always
cached in PCM files, we don't really achieve any major wins by caching
the API notes information separately. Just rebuild the PCM when the
API notes change, like we do for headers.

The next step is to not use the binary form at all. We don't really
need it, for the same reason we don't need the cache.

rdar://problem/31745420, also a better solution to
https://bugs.swift.org/browse/SR-5806

Cherry-picked from 581f4ac on top of 13bdf77, in order to make the
former apply more cleanly.
21 files changed