Ip address scheduler unit tests

The ip address scheduler is very complex (needs refactoring) and has a lot of possible scenarios. These don't cover them all yet but it's what I was able to write in one day. Will write more later.