1) Who knows if there is no reference pointing to a calculator instance? And even if there is no reference now, what will happen if somebody will add a reference in the future? We will have a memory leak. It is a good practice to close your resources, and since there is a method called clean_up it is sensible to do the cleanup there. 

2) Yes, for small computations (as in OATH) the dictionary will be small, but if we have thousands of small computations and the server stays up for several weeks...

 So, no, better safe than sorry.