Computational Design of Mechanical Characters