crypto: introduce .setEngine(engine, [flags])