ui rough-in
added gear image
kinda works, including server proxying to work around cors
cors loading, publishing work (as long as there's a network on the server)
add refresh component list button