feat(build): Re-worked layer type code, lot easier to add new layer types now.