store Status object instead of string
fix status in submit_actor and  local

the job.status.state must be a string like Status.ERROR
the job.status must be a Status  object
fix status in status_actor

job.status is a Status object job.status.state is a string
so fix  to have same type in tests
fix error in formatting  message error
job must be save to store permanently the results in DB
status_actor must work in job directory !
transform provate method to public and add accessors

evalautor is used also to evaluted code for get the results
so some methods need to bee public like pre_process data

and add __setitem__ and __getitem__ to acces directly
to the intenal namespace where the evaluations take place
job must be save after any mutation to be persistent

to be persistent the job must be save afte state modifictaion
other wise the new state is not save in DB and the status of the job
does not really change
fix get_resuslts

the get_results use evaluator private methods.
the evaluator code evolved to transform some private methods
in public methods and add some public accessors.
modify get_results according to new evaluator api
fix status_actor has no attribute job but job is a parameter of method
get_results
Merge branch 'develop' into feature_systems
add public method eval
the job status must be modified only in status_actor

if we modified job.status in local.get_status and in satus actor
we introduce side efect wchih induce trouble in engine (transtion from
finished to fineshed ...)
to avoid all side effects local.get_status must generate a new object
status which is return to status_actor
the status_actor ste this status to the job
add stdout and stder as OutputParameter
add unit test for new method eval in Evaluator
replace hard coded value for return value file by a ProgramJob class variable

according to new ProgramJob API
add file in results only if size > 0

results files are added to Job as results only if their size is > 0
the end_of job is not compute on datime.now but on the last time of
modification of job return value file.
if this file does not exist the fall back is still now.
fix status_actor.getresults if data size == 0 the size was false and
finally add to DB
dd output_type propertise for stdout and stderr parameter to avoid to
havbe thes parameter twice in ProgramJob