data_smart: Ensure all possible overrides are cached including those with '_' in the name

Unfortunately we've been neglecting to pay the correct tributes to the
cookie monster and hence the datastore is malfunctioning.

Currently tributes are only paid on the last part of a variable after
the last "_" character. We need to split by *all* "_" characters since
an override may contain the character.

This fixes the code so the correct number of tributes are made. Paradoxically
parsing appears to be faster after this change.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
setup.py: fix documentation build

setup.py currently aborts when building the documentation:

> ./setup.py build
[..]
error: [Errno 2] No such file or directory:
'/home/jab/src/x/bitbake/doc/manual'

because the doc/manual directory has been renamed to
doc/bitbake-user-manual since commit 452a62a ("doc: Rename user-manual
-> bitbake-user-manual") and its Makefile has been removed as of commit
d419907 ("user-manual: Import YP Docs templates for usermanual
improvements").

Update setup.py to reflect the new name and usage.

Signed-off-by: Andreas Bofjall <andreas@gazonk.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>