cleanup for documentation
made valueavailableaction more specific by creating versions for float and int
refactor with checks and known source data length optimisations
refactor with checks and known source data length optimisations
added some extra standard error messages
refactor with checks and known source data length optimisations