ToSql and sequence support

Add intermediate SQL preparation level with new `ToSql[A]` trait. It allows to rewrite query with Anorm placeholder (e.g. `{param}`), in case parameter need more than `?` in statement passed to `java.sql.PreparedStatement`.
- For basic/single value parameter, Anorm placeholder is replaced by `?`.
- For parameter `Seq[A]`, Anorm placeholder is replaced by `?, ?, ...` (`?` for each sequence item separated by `, `).
- For custom sequence formatting, wrapper case class `SeqParameter[A]` can be used to specify text before/after each item, along with the sequence.

```scala
SQL("SELECT * FROM Test WHERE cat IN ({categories})").on('categories -> Seq("a", "b", "c")
// -> SELECT * FROM Test WHERE cat IN ('a', 'b', 'c')

import anorm.SeqParameter
SQL("SELECT * FROM Test t WHERE {categories}").
  on('categories -> SeqParameter(Seq("a", "b", "c"), " OR ", 
    "EXISTS (SELECT NULL FROM j WHERE t.id=j.id AND name=",
    ")"))
/* ->
SELECT * FROM Test t WHERE EXISTS (SELECT NULL FROM j WHERE t.id=j.id AND name='a') OR EXISTS (SELECT NULL FROM j WHERE t.id=j.id AND name='b') OR EXISTS (SELECT NULL FROM j WHERE t.id=j.id AND name='c')
*/
```