spawned closure instead of callback

instead of the javascript-ery callback, make the fetcher function return a value
synchronously then use the response normaly. All of that wrapped in a spawn() so it
runs asynchronously from the main process. Remember to use this style always:

    spawn(fun() ->
        things that need to be done asynchronously
    end).