Based on idea suggested in comments to #3776, simplifies use of extractor and contractor as libraries.