Fixed methods calling

Added promises so methods are now only called when previous ones are
resolved.
This should fix " time holes" resulting in objects not being sent back
at x time