Changed table_exists syntax and added primary_keys table to deal with case sensitivity issues. Also binary column quote now returns NULL, which is better than empty string