3.1.1

will need some code formatting and the functions updated to current
standards