Reset before CHECKing the status

When SQLite3::ConstraintException is raised, the error message will always be "constraint failed", which isn't helpful enough. So sqlite3_reset() should be called before CHECKing to get more specific error messages from sqlite3_errmsg().

For more information, have a look at: http://www.sqlite.org/c3ref/step.html
Merge pull request #80 from yuki24/fix_error_message

Reset before CHECKing the status