Cleaning up the attribute interfaces
Adding SvgAttributes

Unfortunately SvgAttributes require union types and cannot be properly
typed.
Reformatting for style changes with IntelliJ

Just want to uphold good style.