More messing around. Think I've got promises almost figured out.