How does Windows decide what to place where?
Windows doesn't decide anything. Both the pool and the virtual disk (a space) are visible as storage devices in Windows' device manager. Storage Spaces actually behaves as if it was a device plugged into your computer, so that to Windows itself, it appears as yet another disk to write into. Windows simply writes to the virtual disk and has no care in the world about how is the write request handled, the same way it doesn't care how a physical hard disk actually conducts the write (for example, moving the actuator, changing magnetic properties of sectors). The virtual disk in turn has it's own implementation of writing, depending on what virtual disk type it is. Under mirror settings, it requests two physical destinations from the pool driver, so that two individual copies of that data exist. Under parity setting, it requests N physical destinations from the pool, so that N columns can be written into. Number of columns is a different matter, so I'll not explain it here. But you can google using those keywords.
What does it optimize for? Speed, reliability, etc?
I couldn't find any resource that specifically states that it optimizes for anything. Resiliency types (Mirror, Parity) don't infer any specific optimizations, they merely describe the technique used to store data with protection against failure of physical device (one of the hard disks). What I did find is real-world test results here, which correspond with my own. In short, Mirror resiliency type does improve read performance a little bit, so Storage Spaces clearly does support reading from both disks simultaneously in order to improve performance. In Parity resiliency type, the virtual disk implementation has no option but to read from all columns at once, so the read performance comes by design as the implementation has to collect chunks of data from each physical disk, put it together and then release it as read result. Notice, however, that author of the hereabove linked article complains about poor write performance. That is caused by incorrect
Interleave setting used when creating the virtual disk. When set correctly, Storage Spaces parity write performance can get really close to the number of physical disks it is using (minus 1, because parity).
can I easily see where the files are physically (on which physical disk)?
No. The virtual disk driver decides what is stored where.