reimplement making units (currently ignores resources)