Bridge pattern for platform implementation.

I've noticed that the implementation of StoreController, StoreInfo and StoreInventory in Unity uses lots of #if directives what make the code a little unreadable.
If we are going to merge implementation for Unity editor, things will go like a mess.

So I use bridge pattern to refactor StoreController.
The implementation for different platforms (ios/andorid/editor) can be separated clearly.

I just cut and paste the code so the behaviors should remain unchanged.
If you think this works, then we can refactor StoreInfo and StoreInventory to make them clearly too.