Designing Smart Particles for the Assembly of Complex Macroscopic Structures1. (18th June 2013)