Implement a function make_counter(start) that returns a closure. The returned function accepts one integer argument delta, adds delta to an internal counter initialized to start, and returns the updated counter value. The internal state must remain private and persist across multiple calls to the returned function.
Example 1:
Input: start = 5, calls = [1, 2, -3]
Output: [6, 8, 5]
Explanation: The counter starts at 5 and is updated after each call.
Example 2:
Input: start = 0, calls = [10, 0, 4]
Output: [10, 10, 14]
Explanation: Each invocation uses the same enclosed variable.
-10^9 <= start <= 10^90 <= len(calls) <= 10^5-10^9 <= calls[i] <= 10^9