(widget-choose) Let numeric keypad work

Fixes: debbugs:19268

* wid-edit.el (widget-choose): Let numeric keypad work
and remove old menu-related code.
* lisp/emacs-lisp/eieio-core.el: Prefer inlinable functions over macros.

(class-p, generic-p, eieio-object-p, class-abstract-p):
Make them defsubst, so as to avoid corner case problems where
the arg might be evaluated in the condition-case, or it can't be passed
to higher-order functions like `cl-some'.