Updated self.isxxx logic

Not the best idea, but is far easier to maintain.

Maybe best idea would be to define a __getattr__ and return true only if conditions match, instead of iterating over all possible combinations and checking.