A lot of work.
Manual gradient color calculations and full transition to Angular.
Added rainbow lib.