Updated imc to use base class for shells