Implementing the singleton the right way

`-defaultKeychain` was creating a new object every time, because the variable wasn't static.
It was also not thread safe, so I just used dispatch_once.
Merge pull request #3 from JaviSoto/patch-1

Implementing the singleton the right way