µGame.js - Reusable, low-garbage JavaScript game components