MRuby: Fix compilation
Bindings: Fix inconsistency in Viewport dispose (RGSS1)

As noted, on Viewport dispose, RMXP always calls the core
dispose method for child objects regardless of whether
user scripts override it in sub classes.

Implement this behavior in mkxp to prevent infinite recursion.