     }
 }
 
+/// String is convertible to and from SQLiteValue.
 extension String: SQLiteValueConvertible {
+    
+    /// Returns a SQLite value that can be stored in the database.
     public var sqliteValue: SQLiteValue {
         return .Text(self)
     }
     
+    /// Create an instance initialized to `sqliteValue`.
     public init?(sqliteValue: SQLiteValue) {
         switch sqliteValue {
         case .Text(let string):

    }
}

public struct Blob : SQLiteValueConvertible {
    public let data: NSData
    
    init?(_ data: NSData?) {
        if let data = data {
            self.data = data

            return nil
        }
    }
    
    /// Returns a SQLite value that can be stored in the database.
    public var sqliteValue: SQLiteValue {
        return .Blob(self)
    }
    
    /// Create an instance initialized to `sqliteValue`.
    public init?(sqliteValue: SQLiteValue) {
        switch sqliteValue {
        case .Blob(let blob):
