FN_CACHE was not efficient as it was used to replace another dict.

And was defeating ``reload_modules: true`` in states.
don't exit in an unknown state
return only once

for consistency with the build() function.
was producing redundant information in output
rename variable to ease code reading
_ret_status expect only keywords argument
comply with returned state interface

http://docs.saltstack.com/ref/states/writing.html#return-data
Merge pull request #11169 from ticosax/return-status-for-built

modules.dockerio.build was exiting in unknown state