refactor color handling, and add border color support
support border styles
generate borders