function readFile (filepath, callback) {
        window.requestFileSystem(
            LocalFileSystem.PERSISTENT,
            0,
            function (fileSystem) {
                fileSystem.root.getFile(
                    filepath,
                    null,
                    function gotFileEntry (fileEntry) {
                        fileEntry.file(
                            function gotFile (file) {
                                var reader = new FileReader();
                                reader.onloadend = function (evt) {
                                    // #72 - Fix WP8 loading of config.json
                                    // On WP8, `evt.target.result` is returned as an object instead
                                    // of a string. Since WP8 is using a newer version of the File API
                                    // this may be a platform quirk or an API update.
                                    var text = evt.target.result;
                                    text = (typeof text === 'object') ? JSON.stringify(text) : text;
                                    callback(null, text); // text is a string
                                };
                                reader.readAsText(file);
                            },
                            function (error) {
                                callback(error);
                            }
                        );
                    },
                    function (error) {
                        callback(error);
                    }
                );
            },
            function (error) {
                callback(error);
            }
        );
    }
Save Configuration.

Options:
  - `data` {Object} is the data to save to the config file.
  - `callback` {Function} is triggered on completion.