.load(): respect errors

The previous integration proto used to propagate errors to the integration
itself, but after the refactor it stopped, this is the easiest solution
because most integrations do stuff like `this.load(this.ready)` or dont expect an error
to happen at all (no `func(err){ return fn(err); }`)

solves: #26 #28 (and all the tickets they link to)

cc @calvinfo @lancejpollard @ianstormtaylor