remove unneeded files
do generate Haskell file if module contains extension only
use transitive file dependencies for Str/Sdf caching
adapt to extension decls