Join action

Needs more testing before merging.