[Diagnostics/Debug] Added a Boolean Type and refactoring the abstract Type (implemented the Stringable interface and loosened visibility of the properties).