allow initial to be zero

right now if you pass zero as initial value, it will default to `0.5`