move to enum more consistantly

@scoen can you have a look over this?  While the tests were passing for the previous one it didn't work correctly, I think this was just because I re-wrote the tests so they weren't testing the correct things.  This should correct those errors though... Also I don't think this would stuff up the existing relationships but I'm not certain. Does it look ok to you?