Hello, I am using AWS and trying to work out how to reference an output from one resource during the creation of another. Typically, if they are all created inline, I already have an object reference, and should just be able to reference the normal output properties. However, I was going down the path of splitting everything out into its own class. As an example - let's say I have a KMS key which is stored in a source file under /KMS/Keys/MyKey.cs - then, I have a S3 bucket which needs to reference this Key's ARN to setup server-side encryption - and that code is in, let's say, /S3/Buckets/MyBucket.cs. The idea was to have a folder structure mapped to the AWS services and I have some higher-level code which instantiates everything under /KMS, and then everything under /S3. However, it seems perhaps this is not the way to do this, and instead maybe I should be using Components? I'm still fairly new to Pulumi so still grappling with some of the foundational concepts. Any thoughts on this?