Version bump of rust, splitting out helper packages, new eselect, binary package

New major changes in Rust packaging:

* version bump to Rust-0.12.0

* split out helper packages (e.g. emacs mode): I have asked emacs people how we are usually packaging such stuff and they said, that usually we use separated packages. Also this change helps to easier introduce binary package for rust and make eselect simpler

* new eselect module: it does not handle emacs/vim mode and zsh, but allows to different packages provide rust compiler

* binary package: it has only one slot, because to be installed in different slots and work rust compiler needs changing of postfix in labrary names (what is done for source packages), for binary package that's impossible