core: allow changing the priority at runtime

~~Untested.~~ RFC.

Closes #198.
Actually that's both - a false assumption (you'd have to also test for `<= SCHED_PRIORITY_MIN`) and not what this test should be about. That, plus `-1` is not a random negative value but the precise value defined for an undefined priority during the initialization above.