Extracted interfaces from CFItem, CFStorage, CFStream classes and changed implementations to utilise interfaces rather than concrete types.  This includes all unit tests.