feat(ast01): parse, encode and multiply matrixes
chore(ast01): main() to test module
feat(ast01): matrix.c skeleton for program

Here is the basis with written up fork methods.
So this program will start 3 processes that will do nothing.
feat(ast01): provide flexible Makefile

This Makefile is compiling all required files and watches all updates.
Only need to supply output binary name and names of all objects that
are required.
refactor(Makefile): rename LINK_TARGET, OBJ_NAMES and OBJS to contain N

Rename general names into less general
feat(ast01): add parent and both children

First child reads stdin and writes to the pipe encoded matrix.
Second child reads pipe and writes to stdin multiplied matrix.
Parent runs first child twice, multiplies matrixes and runs second
child.
fix(ast01): create fifo in the beginning of the program
fix(ast01): correct reading of 2 matrixes

Parent correctly waits for the child when reading matrixes.
feat(ast01): parse, multiply and send matrixes

Parse matrixes from input, multiply them and send result into output
program.
style(ast01): formatting of output strings and code
fix(ast01): delete pipe in clean of Makefile
feat(ast01): rename matrix to matrix_pipe
feat(ast01): interrupt program after 10 second delay of input
refactor(ast01): change type, provide var, change way to set 0
chore(ast01): add folding for method
docs(ast01): add comments for question 1
style(ast01): small style fix
fix(ast01): correctly allocate memory for variable
feat(ast01): provide executable Readme file to run program
feat(ast01): question 2 completed

Question 2 is to produce vector dot product similar to question 1, but
instead of pipes we need to use sockets.
In this example unix sockets were used.