first draft of Part and PartStream
added PartTransformer; tests pass