Kraken launches self-custodial mobile wallet and releases its open-source code