Initial commit with skeleton and classes