WooCommerce Plugin - Add Text & Upload Image

I am looking for some help with regards to plugins that will work with WooCommerce, here are the descriptions of the two plugins I require;

1) ADD CUSTOM TEST
I need the option if a customer clicks the product (ie; T-Shirt) they have the ability to type text in a field that will submit with the order. For example, someone clicks T-Shirt and then has the option to type some text that they want to appear on the text

2) PRODUCT NOTES
I also need the ability for customers to add notes to the order, for example - a paragraph field where they can type notes on how they want to customise their order. This will include information like a red and blue panel, with white pocket and white trimming. This also needs to be included in the information received when the order comes through on email

3) I also offer the ability for customers to upload their company logo or image they want to appear on the t-shirt. I need a plugin that the customer can choose the file they wish to upload and it will send to me, that also comes through on the email order and give me the ability to view or save the image from the wordpress admin section.

I hope this is enough information for someone to give me some advice on what plugins to use.