Handle !important CSS declarations (fixes #49)

This was a little trickier than I thought because "!important" allows individual properties within a single rule to have a different priority than the selector would indicate. But my solution is pretty straightforward: split the rule and pull out the "important" properties.

Actually, whilst we're at it... 
That `rule_index += 1` is just annoying. We can just do this:
```python
    ...
    specificity = (
        is_important, 
        id_count, 
        class_count, 
        element_count, 
        ruleset_index, 
        len(rules)
    )
    ...    
```
and then delete the variable `rule_index`. 

Right?