support initWithFrame

move setup to shared method to support both init methods.