Design improvements and bug fixes.