Lazy and unobturisve JavaScript inheritance