DRY out relative positioning
Merge branch 'feature/push-pull'