Add limits, contructor, minor changes