add optional new view system
ensure viewGet() doesn't return null
Allow return type as first arg in views/models + new view system.