refactor set-rgb to use write-seq
add fade-rgb function