Generate crate interfaces and enable to import them
This adds several new features:
- we can register shims for ADTs in shim files
- RefinedRust generates a
interface.rrlib
file for each verified crate that specifies the public interface of this crate and the specifications it provides - We can load these libraries with the new
rr::include
crate/mod-level attribute - The frontend will search in a user-configured search path for the libraries imported via
rr::include
and make their specifications available to the verifier. The search path is configured via thelib_load_paths
config option.