started attempt to make it pass promises a+ bits n bobs