Assembly System Design: A Review and Perspective