Refactor selection and page package to use public struct pattern
Adds type check for selection#EqualsElement