add vitals; swap inheritance for autoloading