!Important: Must apply base class name to body now.

Refactors and added some inline documentation.
Refactors and inline documentation