This commit abstracts away encapsulation to more easily allow for different types of encapsulation or compatibility with other networking solutions.