 }
 
 /// Reads and writes JSON files.
-class ContentsJSON {
+struct ContentsJSON {
     /// Holds the image data from <AssetType>.json
     var images: Array<[String : String]>
     
     /// Holds the complete information required for Contents.json
-    var contents: [String : AnyObject]
+    var contents: [String : AnyObject] = [:]
     
     ///  Initializes the JSONData struct
     ///

    ///
    ///  :returns: The initialized JSONData.
    init(forType type: AssetType, andPlatforms platforms: [String]) {
        self.images   = []
        self.contents = [:]
        
        // Initialize the data object.
        for platform in platforms {
            self.images += JSONObjectForType(type, andPlatform: platform)
        }
    }
    
    init(forType type: AssetType) {
        self.images   = []
        self.contents = [:]
        
        // Initialize the data object.
        self.images = JSONObjectForType(type, andPlatform: "")
    }
    
    ///  Gets the JSON data for the given AssetType.

    ///  Saves the Contents.json to the appropriate folder.
    ///
    ///  :param: url File url to save the Contents.json to.
    mutating func saveToURL(url: NSURL) {
        // Add the images to the contents dictionaries.
        self.contents["images"]  = self.images
        
        // Serialize the contents as JSON object.
        let JSONData = NSJSONSerialization.dataWithJSONObject(self.contents, options: .PrettyPrinted, error: nil)
        
        // Save the JSON object to the HD.
        if let data = JSONData {
            data.writeToURL(url.URLByAppendingPathComponent("Contents.json", isDirectory: false), atomically: true)
        }
