1. My site will be using various suppliers who will ship the various ordered products. How do I set up a system so that if product A is ordered, the order is emailed directly to the relevant supplier, etc.
As I know there is no pre-built and pre-installed system for product A when ordered to be emailed directly to the relevant supplier. So most likely you will have to send it manually.
How can I set up the back end system so that I know ‘Blue Widgets’ come from supplier A, etc.
You can add all the suppliers and then simply filter products on the basis of supplier.
Default Magento has very simple filtering system, so in case you are interested in more advanced filters, you can try out the application for Magento management called Store Manager for Magento. There is the possibility to use a wide range of default and custom filters. If you are interested, you can download free 2-week version of the application from the link in my signature.
3. How can a system be set up that allows me to enter the cost price of the product to the back end.
You can create attribute for numeric values and name it - Cost price, however, it will be used for statistics and reports, but not for any calculations.
Also with Store Manager you can import the price your supplier provides you to the fields Cost Price and Regular price and for regular price you can add some % to the price. In this way you will have cost price - the one your supplier provides you and regular price, which will be with mark-up.
4. ...and finally, I’ve noticed the server speed is quite slow. My hosting is normally excellent - I’ve been using the same person for 15 year’s.
Magento is very feature-rich and flexible platform, but it requires much more resources than any other shopping cart, so you can consider starting this project on the server where it will be available more resources.
Hope my reply was helpful.