Complete translate fields only when fields param is not set.

* Testing that if we set the fields to introduce in the translation table we don't create all the fields in the table although they are translated in the model
* Added and tested the method for adding new attributes to the translation table
* Changed add_translation_fields! to be more similar to create_translation_table! and to be able to handle the remove_source_columns and migrate_data options
* Use add_translation_fields in create_translation_table and adapted remove_source_columns and move_data_to_translation_table for use only specific fields on migration.
* Tested that adding a translated field and moving data doesn't overwrite old translated data
* Added tests for remove_source_columns after add_translation_fields.
* Avoiding deprecation warning with remove_column method.

Fixes #98
Fixes #131
Fixes #201
Fixed rubygems warning.