Replace asXXX_YYY with YYYcast_XXX

Every cast asXXX_YYY which casts a pointer to YYY_t into
a pointer to XXX_t is replaced with a call to function YYYcast_XXX.
The functions YYYcast_XXX are part of interface of type XXX_t.

- type arraystf_t -
Function asunode_arraystfmwaybranch is replaced with branchcast_arraystfunod
Function asunode_arraystfnode is replaced with nodecast_arraystfunode.
Function asbranch_arraystfunode is renamed into branch_arraystfunode.
Function asnode_arraystfunode is renamed into node_arraystfunode.

- type arraysf_t -
Function asunode_arraysfmwaybranch is replaced with branchcast_arraysfunode.
Function asunode_arraysfnodeis replaced with nodecast_arraysfunode.
Function asbranch_arraysfunode is renamed into branch_arraysfunode.
Function asnode_arraysfunode is renamed into node_arraysfunode.
Implement isfree_instream

Returns true if object of type instream_t is set to instream_INIT_FREEABLE.
Change signature of read_file/ write_file

The buffer is no more of type "uint8_t buffer[buffer_size]"
but of type "void * buffer" which accepts any pointer
or array type.