Added main class file (out of order, subject to change)