Sweetness!
The only way to do it I could think of was to have an animated collision mesh on the end of the train that would act as an actual hook when a button was pressed... But I hear that causes a deal of lag. Does it work like that?
If not, how is it working?