Separate out implementation deps