Refactoring - please see description

Renamed ComicType.cs to VolumeType.cs to match enum name.

Reworked ModelBase class into ValidatableBase (that's just focused on
validation)

Replaced Program.Categories.CategoryBase abstract class with ICategory
interface. It serves the same purpose as CategoryBase, but it's an
interface and not a (mostly useless) base class.

Added code documentation throughout
Added documentation to Program code