Adding Utiltiy Classes and Basic Interface