major client-side refactor