refactor, add scaffolding for html component loading