Support no interaction mode

This removes the need for interaction and automatically generates the migrations.

This allows us to run the command from within the app as such:

```Artisan::call('migrate:generate', ['--no-interaction' => true, '--tables' => 'categories', '--connection' => 'mysql']);```