Extended design for customised displays.

In this release, we have extended the design to allow users to select
part attributes as well as their order in the display.

Details:
1. Exporter constructor now takes in PartBuilder;
2. PartBuilder split into PartBuilder and Part;
3. PartSchema.part() added;
4. Other changes added to fit with above changes.