Add default value for `create_table_definition`

In most cases, called by table_name only.
This `options` is for the column that has been recorded by CommandRecorder, is not for `create_table_definition`.
`td` is made only to call `new_column_definition`.

https://github.com/rails/rails/blob/6613716ad7d6fe68dc65dff52694e2d5e72ca2fc/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb#L348

```ruby
      def change_table(table_name, options = {})
        if supports_bulk_alter? && options[:bulk]
          recorder = ActiveRecord::Migration::CommandRecorder.new(self)
          yield update_table_definition(table_name, recorder)
          bulk_change_table(table_name, recorder.commands)
        else
          yield update_table_definition(table_name, self)
        end
      end
```

https://github.com/rails/rails/blob/6613716ad7d6fe68dc65dff52694e2d5e72ca2fc/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb#L471

```ruby
      def bulk_change_table(table_name, operations) #:nodoc:
        sqls = operations.flat_map do |command, args|
          table, arguments = args.shift, args
          method = :"#{command}_sql"

          if respond_to?(method, true)
            send(method, table, *arguments)
          else
            raise "Unknown method called : #{method}(#{arguments.inspect})"
          end
        end.join(", ")

        execute("ALTER TABLE #{quote_table_name(table_name)} #{sqls}")
      end
```