Structural Implicits for Type Classes

Added structural implicits for the following type classes:
-Emptiness
-Definition
-Readability
-Writability

Renamed implicit methods in Readability and Writability.