I might be putting this into software terms, but I just want to have all my things be the same type, but have multiple instances (multiple things). Each thing must be able to be referenced individually as well, and individually subscribe to messages. Then, I could have multiple Raspberry Pi's send data back to AWS-IoT while also each could subscribe to a unique message. Thank you.
After doing some further research, I'm pretty sure Thing Types are what you want.
Thing types allow you to store description and configuration information that is common to all things associated with the same thing type. This simplifies the management of things in the thing registry. For example, you can define a LightBulb thing type. All things associated with the LightBulb thing type share a set of attributes: serial number, manufacturer, and wattage. When you create a thing of type LightBulb (or change the type of an existing thing to LightBulb) you can specify values for each of the attributes defined in the LightBulb thing type.
Thing Types do not mean all the devices are treated as one device; each Thing receives its own ARN regardless of whether it has a Thing Type or not.
Each Thing should be able to subscribe to a custom topic (if you're using the MQTT broker), even though it has a Thing Type. The only difference is that Things with a Thing Type are given certain (immutable and fixed) attributes which can define properties for that particular type of Things.
If you want to send messages from all your Things as if they are one, just publish to a common MQTT topic not specific to one device.