 
 
 enum BlueMixDataManagerError: ErrorType {
-    case DocDoesNotExist
+    //error when the user does not exist when we attempt to get the user by id
     case UserDoesNotExist
+    
+    //error when there is a connection failure when doing a REST call
     case ConnectionFailure
 }
 
 enum BluemixDataManagerNotification : String {
+    //Notification to notify the app that the REST call to get all images has started
     case GetAllImagesStarted = "GetAllImagesStarted"
+    
+    //Notification to notify the app that repulling for images has completed, the images have been refreshed
     case ImagesRefreshed = "ImagesRefreshed"
+    
+    //Notification to notify the app that uploading an image has began
     case ImageUploadBegan = "ImageUploadBegan"
+    
+    //Notification to nofify the app that Image upload was successfull
     case ImageUploadSuccess = "ImageUploadSuccess"
+    
+    //Notification to notify the app that image upload failed
     case ImageUploadFailure = "ImageUploadFailure"
+    
+    //Notification to notify the app that the popular tags were receieved
     case PopularTagsReceived = "PopularTagsReceived"
 }
 
 
 class BluemixDataManager: NSObject {
     
+    //Make BluemixDataManager a singlton
     static let SharedInstance: BluemixDataManager = {
         
         var manager = BluemixDataManager()

            return bluemixConfig.remoteBaseRequestURL
        }
    }
    
    func getPopularTags() {
        
        let requestURL = getBluemixBaseRequestURL() + "/" + kTagsEndPoint

    private let kUsersEndPoint = "users"
    private let kTagsEndPoint = "tags"
    
    //used to help the feed view model decide to show the loading animaiton on the feed vc
    var hasReceievedInitialImages = false
    
    /**
     Method initilizes the BMSClient
     */
    func initilizeBluemixAppRoute(){
        
        BMSClient.sharedInstance
            .initializeWithBluemixAppRoute(bluemixConfig.appRoute,
                                           bluemixAppGUID: bluemixConfig.appGUID,
                                           bluemixRegion: bluemixConfig.appRegion)
    }
    
    /**
     Method gets the Bluemix base request URL depending on if the isLocal key is set in the plist or not
     
     - returns: String
     */
    func getBluemixBaseRequestURL() -> String {
        
        if bluemixConfig.isLocal {
