Initial Commit - adding some functional basics