Only update state if request from CI has newest known build number.

- buildnumber is a new required param for all PUT requests
- cleanup: move logic out of controller
- Rename Jenkins to CI to be more general