Decouple the Custom Elements web platform feature and embedder feature.

Chrome Apps V2 implements <webview> as a Custom Element by flipping
on the Custom Elements feature, but in a limited mode where it only
accepts specific tag names. This breaks author script which tries to
do feature detection of Custom Elements, because document.register is
present, but acting in lame-duck mode.

This patch adds a specific API for embedders to define Custom
Elements. The API surface is independent of the web platform feature
so that they can be used in isolation or both at the same time.

BUG=273126

Review URL: https://chromiumcodereview.appspot.com/22854017

git-svn-id: svn://svn.chromium.org/blink/trunk@156331 bbb929c8-8fbe-4397-9dbb-9b2b20218538