move views out of render, rely on subviews instead