ffi: Implement ffivar.get()/set() methods.

Done by introducing another factored out helper API in binary.c. This API
can be reused also by array and struct modules.
diff --git a/py/binary.h b/py/binary.h
new file mode 100644
index 0000000..0bd6ad1
--- /dev/null
+++ b/py/binary.h
@@ -0,0 +1,7 @@
+// Use special typecode to differentiate repr() of bytearray vs array.array('B')
+// (underlyingly they're same).
+#define BYTEARRAY_TYPECODE 0
+
+int mp_binary_get_size(char typecode);
+mp_obj_t mp_binary_get_val(char typecode, void *p, int index);
+void mp_binary_set_val(char typecode, void *p, int index, mp_obj_t val_in);