Initial version, reworking so it builds it all.