             newSize = NSSize(width: floor(self.width * heightRatio), height: floor(self.height * heightRatio))
         }
         
-        return self.copyWithSize(newSize)
+        return self.imageByCopyingWithSize(newSize)
     }
     
-    ///  Copies and crops an image to the given size.
+    ///  Resizes the original image, to nearly fit the supplied cropping size
+    ///  and returns the cropped copy of the image.
     ///
     ///  - parameter size: The size of the new image.
     ///
     ///  - returns: The cropped copy of the given image.
-    func cropToSize(size: NSSize) -> NSImage? {
+    func imageByCroppingToSize(size: NSSize) -> NSImage? {
         // Resize the current image, while preserving the aspect ratio.
         guard let resized = self.resizeWhileMaintainingAspectRatioToSize(size) else {
             return nil

        return nil
    }
    
    ///  Copies the current image and resizes it to the given size.
    ///
    ///  - parameter size: The size of the new image.
    ///
    ///  - returns: The resized copy of the given image.
    func copyWithSize(size: NSSize) -> NSImage? {
        // Create a new rect with given width and height
        let frame = NSMakeRect(0, 0, size.width, size.height)
        

    ///  Saves the PNG representation of the current image to the HD.
    ///
    /// - parameter url: Location which to save the PNG file to.
    func saveAsPNGFileToURL(url: NSURL) throws {
        if let png = self.PNGRepresentation {
            try png.writeToURL(url, options: .AtomicWrite)
        } else {
