Adding more logging to make determining missing types more apparent
Restructuring to handle optional arguments
Adding javascript Window type