Issue #9: use memset instead of for
Issue #9: remove camel-cased variable names
Issue #9: rename mac_offset -> mac_ptr
Issue #9: space before/after operator
Issue #9: use memmove/memset
Issue #9: no need to NULL pointers
Issue #9: use string constructor
Issue #9: ensure we pad operators