Removed comments
Cleaned up namings
Removed redundant protocol