Added ifndef and included implentation file at bottom
added a few comments
Added ifndef and included implentation file at bottom