A bunch of changes!

Colors are now added into html at runtime (so we can display different
numbers of colors), added random color button, added clear button,
refactored a little