Use line numbers to implement control comments instead of visit order

Addresses DuplicateProperty bug reported in #150 

I've split the control comments code into a separate file and removed the brittleness whereby the visit order is crucial to the operation of the control comments. The downside is that it is now brittle to determining the line numbers to which the control comments apply, see lines 49-59 of lib/scss_lint/control_comments.rb to see what I mean.

I've also updated the test to detect this bug.