Add a range limit to Tool_action; 0 means no limit.  Also add TOOL_TARGET_ALL, but it's not implemented.  Player::pick_target_for() adheres to the range limit.