Use `seq?` instead of `list?`

This patch fixes a subtle problem in which types such as
clojure.lang.ArraySeq were not being rendered. Consider the following
stylesheet code:

  (defn on-hover [& styles]
    ["&:hover" styles])

  (css [:a (on-hover {:font-weight "bold"})])

The expected output should be:

  "a:hover{font-weight:bold}"

but it is actually "". Prior to this patch the `on-hover` function
would have to be written as:

  (defn on-hover [& styles]
    (into ["&:hover"] styles))

which is tedious and can lead very dirty code.
Improve media query indentation, move media output fns to util
Refactor and organize tests

Compiler tests no longer test `with-output-style` behavior, instead this
has been moved to the core test suite.

Sample CSS files have been added to make testing the output easier.
Testing strings was becoming a real headache. The compiler tests should
be set up this way soon.