You will have to major rewriting whether you want to or not. You will not cover every base out of the gate. Your users will do stuff and break stuff that you will never think of at this stage. Hell you may come up with a clever way to implement a feature - but that may only occur several months after the users have been exposed to the product.
It is just a fact of life. No plan is perfect, no software is perfect, and nothing ever survives the userbase intact.