implemented promise-based xmlhttprequest
reimplemented vk uploading