rewrite term_decode() for picoLisp.

The previous implementation was ugly!
It assumed length and used err() when
it was not required. It also printed a
very useless error message.

All err() conditions are handled by
picoLisp's Need*() macros.
Cleanup cpu module for picoLisp.

1. Remove conditional blocks for other languages which
   are empty. (We'll put them back when we get to the
   actual implementation).

2. Remove macros for getting address and data. Replace
   this with traditional Lisp wrapper code.