Initial implementation

Provides implementation of list, show, add/update and delete functions.
Actually it's not. The input string is a wchar_t (so two bytes per character) of hex encoded binary data. So something like L"20004500". So we have two bytes per character in the input string, but the output buffer is the result of two characters ("20" => 0x20) resulting in one byte. So the / 2 is the correct formula.