Initial Commit

Added base classes and core selector methods