CloudSigma2 ComputeService and SecurityGroupExtension

* Added the ComputeService implementation
* Added the SecurityGroup extension
* Added the San Jose region
Having a deeper look at this, I think this class doesn't do the right thing. According to [the API docs](http://cloudsigma-docs.readthedocs.org/en/2.10/fwpolicies.html) the `!` character is used to "negate" a range. That is, a `!0-1024` range would mean any port that is **not** in that range. This class, however, just "ignores" the `!` character when parsing the ports and sets a range that is just the opposite than the one defined by the rule.

This must be changed so the returned port range properly reflects the behavior of the rule. That may require to change the function to return "more than one `IpPermission` given a single `FirewallRule`, but it is not a big deal to change this function to return an `Iterable`. It is important that this class returns the right thing.