My code is usually an absolute mess until I finally have most of it done and I start to like the project, then I'll either clean it up or rewrite it.
I've used that kind of collision method before and it can work pretty well, but be wary if you're not using a fixed frame rate because delta time lag or high velocity can cause teleporting through AABB's or other odd inconsistencies, but your collisions seem to work fine from what I saw.
Performance wise; I can' think of anything faster than AABB vs AABB, but are you using quadtrees or some other spacial partitioning? That should minimise the amount of collision checks per frame for entities compared to iterating through an array or list and comparing it to another array or list.
I'm following your page now, so I'll be interested to see where it goes. Keep up the good work :)