Initial commit with basic funtionality