DDL methods

hi, 
added some new and useful  DDL methods:

public static void AddColumn<T>(this IDbConnection dbConn,   Expression<Func<T,object>> field);

public static void AddColumn(this IDbConnection dbConn, Type modelType, FieldDefinition fieldDef);

public static void AlterColumn<T>(this IDbConnection dbConn,  Expression<Func<T,object>> field);

public static void AlterColumn(this IDbConnection dbConn, Type modelType, FieldDefinition fieldDef);

public static void ChangeColumnName<T>(this IDbConnection dbConn,
                                       Expression<Func<T,object>> field,
                                       string oldColumnName);

public static void ChangeColumnName(this IDbConnection dbConn,
                                    Type modelType,
                                    FieldDefinition fieldDef,
                                    string oldColumnName);

public static void DropColumn<T>(this IDbConnection dbConn,string columnName);

public static void DropColumn(this IDbConnection dbConn,Type modelType, string columnName);

public static void AddForeignKey<T,TForeign>(this IDbConnection dbConn,
                                             Expression<Func<T,object>> field,
                                             Expression<Func<TForeign,object>> foreignField,
                                             OnFkOption onUpdate,
                                             OnFkOption onDelete,
                                             string foreignKeyName=null);

public static void DropForeignKey<T>(this IDbConnection dbConn,string foreignKeyName);

public static void CreateIndex<T>(this IDbConnection dbConn,Expression<Func<T,object>> field,
                                  string indexName=null, bool unique=false);

public static void DropIndex<T>(this IDbConnection dbConn, string indexName);