new base class for user applications