Update existing items using SecItemUpdate() instead of deleting

It seems like it would be a better idea to update existing keychain items instead of deleting and recreating them every time. This has the added benefit of solving the OS X bug I [mentioned to you on Twitter](https://twitter.com/indragie/status/342520244889329665) because it bypasses the use of `SecItemDelete()`.