The power button sounds like the plastic outer button that is actually attached to the outer case sometimes gets misaligned or part of it gets detached and therefor does not make proper contact with the internal button(attached to the main board)
Charging problem is most likely a bad and/or loose charging port.
Because of the bad/loose charging port there is a possibility that the plug could have shorted something out on the board.