Resolve issue with bundle format and caching

This adds a new internal concept of a `CachedModule` which is a subclass of es6-module-transpiler's `Module` class. This is used during rebuilds to speed up the "visiting" of unchanged modules.

Previously there was an issue when using the Bundle format, which would cause the `id`'s of cached modules to grow and become out-of-wack. This fixes that.