promise errors flow through as per #51. Unit test needed.