Anyway, I think that's kind of what I like about those characters who go back and forth between good and evil, the heroism it takes for them to do the right thing. I've always had the tendency to see every story from both sides and I kind of feel like people who have always been good don't really have to work to do the right thing. Therefore being good, for them, is not a heroic act; it's just their nature. However for someone who, for whatever reason, is more inclined to do the wrong thing being good, even if only for a little while, is heroic. Also, many times the villain is someone who truly believes he/she is doing the right thing. The only thing that actually makes these people villains is the fact that the hero doesn't agree with their methods.
On a related note, I finally watched the final season of Being Human and, even though I'll never get over Mitchell, I actually really love Hal.