Add a gonk port. (v2)

Dead code removed, assert macro used where it seems to make sense, more consts added, and things just generally cleaned up.