Upgraded and corrected attributes tokenizer and parser

Hi there. Here's my small contribution.

Tokenizer and parser now correctly parse:

```%div{ key: "#{value}", key:       'value with double " quotes'   } Content```

* random spaces between key and value
* any number of spaces after the last parameter and curly brace
* content after the curly brace (conflicted with spaces before the closing brace)
* any number of #{...} extrapolations inside the values

Also the format of HTML-like and Ruby-hash-like attributes has been corrected according to the spec, and recognized only when follow exactly:

* ```{ keyword: "double quoted value", keyword2: 'single quoted value' }````. Note the use of strictly ":" as key-value delimeter.
* ```( keyword="value" keyword2="value" }```. Note the use of strictly "= and no commas between attributes.

Let me know how it looks. Cheers.

P.S. I'm also planning on extending the support to ```{ :keyword => "value" }```.