[DBAgent] Extend insert()  to be able to perform 'upsert'.

This commit is only for DBAgentMySQL.
[testDBAgentMySQL] Add a new test: test_upsert().
[DBAgentSQLite3] Implemnt upsert.
[DBAgent] Simply upsert options.

On our actual situation, there is less of a chance of specifying
indexes to be updated. So this patch just pass the flag to do it or not.
[DBAgentTest] Confirm that the value is successfully updated.
[DBAgent] Use a more readable name.

upsert ->
upsertOnDuplicate

'upsert' itself is a name of operation in the same manner as 'insert'.
So this patch adds the condition to do it.
Merge pull request #383 from project-hatohol/dbagent-upsert

Dbagent upsert