Redesign task

References: #11 #20 #25