Information about a particular predef file or snippet.
Information about a particular predef file or snippet. hardcoded represents whether or not we cache the snippet forever regardless of classpath, which is true for many "internal" predefs which only do imports from Ammonite's own packages and don't rely on external code
This gives our cache tags for compile caching.
This gives our cache tags for compile caching. The cache tags are a hash of classpath, previous commands (in-same-script), and the block-code. Previous commands are hashed in the wrapper names, which are contained in imports, so we don't need to pass them explicitly.