Refactoring

@stefanpenner what about using `!deps.splice`? (or I can just port that from RSVP)