Add Portal struct for transfering data
Add portal inspection for cleaner output
Add supervision to the portals

When a portal shuts down, it will be recreated.
Data does not persist when this happens.
Add push_left function