implement player as Actor
add future so play is non-blocking