optimize batch perf with more aggressive caching
- don't reparse cached FastParsers (50%)
- don't invalidate star_import_cache if never_clear_cache is True (25%)
- pre-cache module parse trees (helps a little)
change clear-cache option from func param to global switch
fix change-work-dir error