rebond framework design refactoring