This is a big 'it depends' question.
I can't answer the how to create the individual RAID arrays question for you, as I'm not a storage expert, but I can help you with the rest.
The first thing you nede to consider is what is the workload on the various databases - OLTP (read/write) or DSS/DW (read-mostly). For read/write workloads, you should be looking at RAID 1 or RAID 10 (RAID 1+0), as these provide redundancy and great read/write performance. For read-mostly workloads you can use RAID 5. The reason RAID 5 should not be used for read/write workloads is that you pay a performance penalty on writes.
Transaction logs, by their very nature are read/write (or write-mostly, depending on whether you're using the transaction log for anything - e.g. log backups or replication) and so should never be put on RAID 5.
This means that for some databases and workloads, you may have data files on RAID 5 and log files on RAID 1/10, and for other databases you may have everything on RAID 1/10. Going further, if you have a partitioned database, it may contain some read-mostly and some read/write data, possibly even within the same table. This could be split into separate filegroups and then each filegroup put on an appropriate RAID level.
Separation of actual databases again depends on the workload, and the capabilities of the underlying IO subsystem - a higher degree of separation may be required for storing things on individual RAID arrays than on a SAN, for instance.
Tempdb is a special case all on its own, as its usually a heavily-loaded database and should be stored separate from the other databases. The system databases should not be heavily used and can be placed anywhere as long as there is redundancy.
Here's a link to a whitepaper I helped write that should help you: Physical Database Storage Design. Also make sure your IO subsystem can handle the anticipated workload - see this whitepaper: Predeployment I/O Best Practices. Finally, make sure that you use the correct RAID stripe size (usually 64K or higher on newer systems), the correct NTFS allocation unit size (usually 64K), and that on systems prior to Windows Server 2008, you set the disk partition offset correctly. For info on these, and pointers to more information on them and why you should configure them this way, see this blog post: Are your disk partition offsets, RAID stripe sizes, and NTFS allocation units set correctly?.
Bototm line: know your workload and your IO subsystem capabilities and then implement accordingly.
I hope this is helpful to you.
PS As far as tempdb is concerned, it's a big can of worms over how you should configure it and there's all kinds of conflicting information. I wrote a comprehensive blog post about tempdb data file configuration at Misconceptions around TF 1118.