Man turns the tables on carjacker, holds him at gunpoint until cops arrive