Adds On Duplicate Key Update clause support

RFCR @nmonterroso @owend @SQLReview 

per http://dev.mysql.com/doc/refman/5.6/en/insert-on-duplicate.html

This will allow for fluent style upserts.

The first use case will be here https://github.com/Wikia/app/blob/dev/extensions/wikia/FacebookClient/FacebookMapModel.class.php#L270-270 for https://wikia-inc.atlassian.net/browse/UC-74
Agree with Garth. We should try and be consistent in how we implement these. The values here should be converted to `Values` objects and the `build()` function called on them.