Well, I eventually discovered the problem.
There was three main issues:
1) Some of the programs need you to create configuration files from scratch. Seriously? Why not just write them in Japanese and pin them to the moon - It would be just as useful.
2) I found I had mailbox_location and mail_dir in procmail the wrong way around after using an example off the internet. Linux has a lot of help on the internet, but a lot of it is wrong, outdated and doesn't give enough information. For example, many sites show what to put in your fetchmail configuration but fail to show where to save the file and what to call it.
3) The reason procmail was not working was firstly because the error in my configuration file as above. It was not appearing in my log files because procmail cannot write to the /var/log folder due to permissions - so no errors reported. The solution was to switch of all logging in the config file. What kind of program can't write to a log file?
What a joke. If you write software, please make sure that you provide a default configuration file! Also, don't crash if you can't write to a log file, especially if you are writing successful statements. No one looks in a log file unless something isn't working.