Imported overlord solution

Joe/Sophia,
I spent this morning re-doing my level_up fork and branches. I believe it is correct now. Each task now has its own branch containing nothing other than changes pertinent to the task itself.

I'm resubmitting a code-review pull-request for overlord.

Zamir
Refactoring this to put the casting and raise into the integer checking method would probably simplify this code, especially since you just raise out of the method anyway.