fix for many-to-many recursive save
Merge pull request #551 from MaksSlesarenko/fix-for-many-to-many

fix for many-to-many recursive save
Fix travis builds
Merge pull request #546 from ulfhermann/master

fix graphviz syntax
fixed key serialization
added test
Merge pull request #557 from MaksSlesarenko/fix-for-date-primary-key

fixed key serialization
fix serialization for all temporal type
Merge pull request #558 from MaksSlesarenko/fix-for-temporal-types

fix serialization for all temporal type
Avoid escaping single quote in a string

See: https://github.com/propelorm/Propel/pull/558/files#r2616005
Fix 327 for incorrect filterById implementation.
Fixed invalid generation of INDEX statements in Table::addExtraIndices() [only MySQL].

If a table has a foreign key on a column of another table that is dynamically created (through a behavior) then Table::addExtraIndices() creates a invalid INDEX since it can not find the referenced (not yet created) column. Because a new column of a behavior can be created later than the addExtraIndices() call of a referencing table, the addExtraIndices should always overwrite his indices. Old behavior was that addExtraIndices always creates a new index if the columns of the foreign key has changed (and this is the case if the engine finds the referenced column during a later call).

Example:

    INDEX `test_item_category_relation_FI_1` (`item_id`, ``),
    INDEX `test_item_category_relation_FI_2` (`item_category_id`, ``),
    INDEX `test_item_category_relation_FI_1` (`item_id`, `workspace_id`),
    INDEX `test_item_category_relation_FI_2` (`item_category_id`, `workspace_id`),

`workspace_id` is a column created through a propel behavior.

This commit
fixes
 - the scenario above by adding Table::hasIndex and Table::removeIndex() und use those methods in Table::addExtraIndices().
 - two typos.
 adds
  - a new test in generator/model/TableTest that replicates the bug.
Very small performance increment by breaking the loop if we found the index to be removed.
Removed the enforced first non-backslash char in php_class data type.

Otherwise one is not able to define for example a basePeer class outside of the namespace of the model.
Removed constraint/foreign key statements if the table is MyISAM.

Adjusted the MysqlPlatform class that it does not return constraints and foreign key statements if the table engine is MyISAM. Duplicated the tests for mysql with a MyISAM counterpart.
Fixed invalid regex for php_class data type
Adjusted coding style.
Merge pull request #561 from MArcJ/fk-index-bug

Fixed invalid generation of INDEX statements in Table::addExtraIndices()...
Adjusted coding style and fixed a innodb vs. myIsam bug in nested set test resulting out of the new distinction between them.
Merge pull request #562 from MArcJ/master

Fixed two bugs: php_class data type and MySQLPlatform MyISAM `foreign key` generation