 //MARK: - Getting Information From an Image Source
 public extension ImageSource {
   /// The uniform type identifier of the source container.
+  /// - seealso: `CGImageSourceGetType`
   public var UTI: String? {
     return CGImageSourceGetType(imageSource) as String?
   }
   
   /// Returns the Core Foundation type ID for the image source.
+  /// - seealso: `CGImageSourceGetTypeID`
   public static var typeID: CFTypeID {
     return CGImageSourceGetTypeID()
   }
   
   /// Returns the number of images (not including thumbnails) in the image source. If the image source is a multilayered PSD file, return 1.
+  /// - seealso: `CGImageSourceGetCount`
   public var imageCount: Int {
     return CGImageSourceGetCount(imageSource)
   }
   
+  /// Return the status of an image source.
+  /// - seealso: `CGImageSourceGetStatus`
   public var status: CGImageSourceStatus {
     return CGImageSourceGetStatus(imageSource)
   }
   
+  /// Returns the current status of an image that is at a specified location in an image source.
+  /// - seealso: CGImageSourceGetStatusAtIndex
   public func statusForImage(atIndex index: Int = 0) -> CGImageSourceStatus {
     return CGImageSourceGetStatusAtIndex(imageSource, index)
   }
   
-  //TODO: Return wrapper around CFImageProperties
+  /**
+   Returns the properties of the image source.
+   - returns: A dictionary that contains the properties associated with the image source container.
+   - todo: Return wrapper around CFImageProperties
+   - seealso: `CGImageSourceCopyProperties`
+   - seealso: [CGImageProperties Reference](https://developer.apple.com/library/mac/documentation/GraphicsImaging/Reference/CGImageProperties_Reference/) for a list of properties that can be in the dictionary.
+   */
   public func properties(options: [Options]? = nil) -> [String: AnyObject]? {
     guard let rawProperties = CGImageSourceCopyProperties(imageSource, options?.rawOptions()) else { return nil }
     return (rawProperties as NSDictionary) as? [String: AnyObject]
   }
   
-  //TODO: Return wrapper around CFImageProperties
+  
+  /**
+   Returns the properties of the image at a specified location in an image source.
+   
+   - parameter index:   The index of the image whose properties you want to obtain. The index is zero-based.
+   - parameter options: An array you can use to request additional options.
+   
+   - returns: A dictionary that contains the properties associated with the image.
+   
+   - seealso: `CGImageSourceCopyPropertiesAtIndex`
+   - seealso: [CGImageProperties Reference](https://developer.apple.com/library/mac/documentation/GraphicsImaging/Reference/CGImageProperties_Reference/) for a list of properties that can be in the dictionary.
+   - todo: Return wrapper around `CFImageProperties`
+   */
   public func propertiesForImage(atIndex index: Int = 0, options: [Options]? = nil) -> [String: AnyObject]? {
     guard let rawProperties =  CGImageSourceCopyPropertiesAtIndex(imageSource, index, options?.rawOptions())
       else { return nil }

import Foundation
import ImageIO

//TODO: Copy/Paste documentation from ImageIO

/** ImageSource objects, available in OS X v10.4 or later and iOS 4.0 and later, abstract the data-reading task. An image source can read image data from a URL, a CFData object, or a data consumer.


   - parameter options: An array that specifies additional creation options.
   
   - returns: A `CGImage` object.
   - seealso: `CGImageSourceCreateThumbnailAtIndex`
   */
  public func createThumbnail(atIndex index: Int = 0, options: [Options]? = nil) -> CGImage? {
    return CGImageSourceCreateThumbnailAtIndex(imageSource, index, options?.rawOptions())
