add restore function to simulate and android

Does not add functionality - simply adds the missing functions so the
api is consistent across each environment.

NOTE: does not actually do anything in either the simulator or on
android. In the simulator this simply creates a fake function that
calls the callback after waiting 2 seconds. On Android this adds
a billingRestore event that gets sent immediately with failure 'not
implemented on android'.
Merge pull request #18 from gameclosure/fix-restore-function-on-non-ios

add restore function to simulate and android
add getLocalizedPurchases function to billing

- Add `getLocalizedPurchases` function (requires native implementations to
    actually work) that accepts item ids and sends them to the store
    for localization.
- Add listener for `purchasesLocalized` event.
add purchase localization on ios

This changes how purchases are initiated on ios. Now, product data is
cached in the plugin whenever an item is localized or attempted to be
purchased. If a product id is found in the cache, a new purchase is
started immediately. If not, a store request goes out first, then a
purchase is started after that succeeds (same as the old way).

Every time a new item is seen by the plugin (either from a localization
request or from a purchase) a `purchasesLocalized` event is emitted.
restructure localizedPurchases event on ios

- Restructure how localizedPurchases event works on ios to match
the other existing apis (return several lists with matching indexes
instead of a dictionary of objects).
- Update the plugin javascript to consume this event in the new form while still
emitting a dictionary of objects in javascript.
add purchase localization for android
update readme with localization instructions
update package version
add simulated getLocalizedPurchases to browser