Make Aer an optional dependency
Qiskit Aer is used in ckt in one place: cutqc verification. We should change Aer to be an optional dependency instead. If Aer is not installed, the simulator introduced in #145 should suffice.
Of course, running the tests or notebooks will still require that Aer is installed.
Once cutqc is deprecated (#494), we'll be one step closer to dropping the Aer dependency. We might just want to wait until we remove cutqc to drop it.
The qiskit-ibm-runtime primitives in local mode, which we plan to use in our tutorials starting in #511, actually seem to take a different code path for simulation based on whether Aer is installed.
For this reason, we should either (i) keep Aer as a dependency, even if all explicit references to Aer in the CKT library are removed; or, (ii) perform testing both with Aer installed and with Aer absent. The first option is simpler for us, as it means we don't have to ensure compatibility with ~~BasicProvider~~ BasicSimulator.