People/rporres/sqlite autoincrement

As stated in the SQLite docs, the behaviour of autoincrement changes when the column is a primary key.

http://www.sqlite.org/autoinc.html

SQLite generator doesn't do anything with autoincrement in primary keys. 

Trying to generate a table with this code:

```perl
   my $table = SQL::Translator::Schema::Table->new(
       name => 'foo_auto_increment',
   );
   $table->add_field(
       name => 'id',
       data_type => 'integer',
       is_nullable => 0,
       is_auto_increment => 1,
   );
   $table->primary_key('id');

   my $result =  SQL::Translator::Producer::SQLite::create_table($table, { no_comments => 1 });
```

would create an "id" row such as

````sql
"id" INTEGER PRIMARY KEY NOT NULL
````

instead of 

````sql
"id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL
````

as expected.

Heres a summary of the changes included:

- I have patched SQL::Translator::Generator::DDL::SQLite to add the word AUTOINCREMENT to the primary keys column is detected as primary key.
- I've also patched 30sqlt-new-diff-sqlite.t and 48xml-to-sqlite.t as the new Generator broke some of the tests
- I've added a couple of tests in 56-sqlite-producer.t to prove the new feature.
- I've added my name and mail in the AUTHORS file as suggested by a Peter Rabbitson message in sqlfairy-developers mailing list

Please do take into account that I'm very new to SQL::Translator and I don't know if the changes and the implementation of them are in sync with the common practices of SQL::Translation.

Regards,

Rafa

PS. BTW, thanks for SQL::Translator. It's been __VERY__ helpful ;-)