A Versatile Computer-Controlled Assembly System